Digital pass verification systems and methods

ABSTRACT

Digital pass verification systems and methods are disclosed herein. One or more servers are to distribute instructions on a network. The instructions, when executed, cause a first device carried by a person to at least: access a result of a diagnostic test performed on the person, the result provided by a second device; generate a machine-readable code in response to the result being negative; and display the machine-readable code on a display of the first device to enable the person to gain access to a location.

RELATED PATENT APPLICATIONS

This patent arises from a continuation of U.S. application Ser. No.17/240,644, titled “DIGITAL PASS VERIFICATION SYSTEMS AND METHODS,”filed Apr. 26, 2021, which is a continuation of U.S. application Ser.No. 17/068,599 (now U.S. Pat. No. 10,991,185), titled “DIGITAL PASSVERIFICATION SYSTEMS AND METHODS,” filed Oct. 12, 2020. U.S. applicationSer. No. 17/068,599 claims the benefit under 35 U.S.C. § 119(e) to U.S.Provisional Application No. 63/054,170, titled “ELECTRONIC HEALTH PASSVERIFICATION SYSTEMS AND METHODS,” filed Jul. 20, 2020, and to U.S.Provisional Application No. 63/080,391, titled “ELECTRONIC HEALTH PASSVERIFICATION SYSTEMS AND METHODS,” filed Sep. 18, 2020. Thus, priorityto U.S. application Ser. No. 17/240,644; U.S. application Ser. No.17/068,599; U.S. Provisional Application No. 63/054,170; and U.S.Provisional Application No. 63/080,391 is claimed. U.S. application Ser.No. 17/240,644; U.S. application Ser. No. 17/068,599; U.S. ProvisionalApplication No. 63/054,170; and U.S. Provisional Application No.63/080,391 are incorporated herein by this reference in theirentireties.

FIELD OF THE DISCLOSURE

This disclosure relates generally to health-based screening and, moreparticularly, to digital pass verification systems and methods.

BACKGROUND

In recent years, there has been a rise in outbreaks of infectiousdiseases (e.g., viral diseases, bacterial diseases, etc.) such as theCOVID-19 virus, Ebola virus, H1N1pdm09 virus, Middle East respiratorysyndrome coronavirus (MERS-CoV), and Severe Acute Respiratory Syndrome(SARS), to name a few. These infectious diseases are often contagiousand easily transmitted from person-to-person in close proximity orthrough indirect contact via objects and surfaces. To curb the spread ofinfectious diseases, many entities (e.g., companies, schools, retailers,governments, facility managers, etc.) restrict people with symptoms ofinfectious diseases from accessing their locations or facilities.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example system or network of entities or personswith which the examples disclosed herein can be employed. FIG. 1 showsan example user, an example tester, an example verifier, and an exampledigital pass management system.

FIG. 2 is a block diagram of an example user device associated with theexample user of FIG. 1 and used to execute an example user application.

FIG. 3 is a block diagram of an example tester device associated withthe example tester of FIG. 1 and used to execute an example testerapplication.

FIG. 4 is a block diagram of an example verifier device associated withthe example verifier of FIG. 1 and used to execute an example verifierapplication.

FIG. 5 is a block diagram of the example digital pass management systemof FIG. 1.

FIGS. 6-13 are example user interface screens that may be displayed onthe example user device of FIG. 2 by the example user application.

FIGS. 14-25 are example user interface screens that may be displayed onthe example tester device of FIG. 3 by the example tester application.

FIGS. 26, 27A, 27B, 28A, and 28B are example user interface screens thatmay be displayed on the example user device of FIG. 2 by the exampleuser application.

FIGS. 29-32 are example user interface screens that may be displayed onthe example verifier device of FIG. 4 by the example verificationapplication.

FIGS. 33-38 are example interface screens that may be displayed on theexample user device of FIG. 2 by the example user application.

FIG. 39 is an example timeline or sequence of events as performed byand/or experienced by a user during an example digital pass verificationprocess.

FIG. 40A is an example timeline or sequence of events as performed byand/or experienced by a tester during an example digital passverification process.

FIG. 40B is another example timeline or sequence of events as performedby and/or experienced by a tester during an example digital passverification process.

FIG. 41 is an example timeline or sequence of events as performed byand/or experienced by a verifier during an example digital passverification process.

FIGS. 42A, 42B, and 42C are example timelines or sequences of events asperformed and/or experienced by a user, a tester, and a verifier,respectively during an example digital pass verification process wherean employer is the verifier and an employee is the user.

FIG. 43 is example timeline or sequence of events as performed and/orexperienced by a digital pass management system, a user, a tester, and averifier during an example digital pass verification process where aschool is the verifier and a student and/or the student's parent is theuser.

FIG. 44 is another example timeline or sequence of events as performedand/or experienced by a digital pass management system, a user, atester, and a verifier during an example digital pass verificationprocess where a school is the verifier and a student and/or thestudent's parent is the user and the user does not have an electronicmobile device.

FIG. 45 is an example timeline or sequence of events as performed byand/or experience by a manufacturer and/or distributor of infectiousdisease test kits.

FIGS. 46A and 46B are flowcharts representative of example machinereadable instructions that may be executed to implement the example userapplication on the example user device of FIG. 2.

FIG. 47 is a flowchart representative of example machine readableinstructions that may be executed to implement the example testerapplication on the example tester device of FIG. 3.

FIG. 48 is a flowchart representative of example machine readableinstructions that may be executed to implement the example verifierapplication on the example verifier device of FIG. 4.

FIG. 49 is a flowchart representative of machine readable instructionswhich may be executed to implement the example digital pass managementsystem of FIGS. 1 and 5.

FIG. 50 is a block diagram of an example processing platform structuredto execute the instructions of FIGS. 46A and 46B to implement theexample user application.

FIG. 51 is a block diagram of an example processing platform structuredto execute the instructions of FIG. 47 to implement the example testerapplication.

FIG. 52 is a block diagram of an example processing platform structuredto execute the instructions of FIG. 48 to implement the example verifierapplication.

FIG. 53 is a block diagram of an example processing platform structuredto execute the instructions of FIG. 49 to implement the digital passmanagement system.

FIG. 54 is a block diagram of an example software distribution platformto distribute software (e.g., software corresponding to the examplecomputer readable instructions of FIGS. 46A, 46B, 47, 48, and 49) toclient devices such as consumers (e.g., for license, sale and/or use),retailers (e.g., for sale, re-sale, license, and/or sub-license), and/ororiginal equipment manufacturers (OEMs) (e.g., for inclusion in productsto be distributed to, for example, retailers and/or to direct buycustomers).

The figures are not to scale. In general, the same reference numberswill be used throughout the drawing(s) and accompanying writtendescription to refer to the same or like parts.

Unless specifically stated otherwise, descriptors such as “first,”“second,” “third,” etc. are used herein without imputing or otherwiseindicating any meaning of priority, physical order, arrangement in alist, and/or ordering in any way, but are merely used as labels and/orarbitrary names to distinguish elements for ease of understanding thedisclosed examples. In some examples, the descriptor “first” may be usedto refer to an element in the detailed description, while the sameelement may be referred to in a claim with a different descriptor suchas “second” or “third.” In such instances, it should be understood thatsuch descriptors are used merely for identifying those elementsdistinctly that might, for example, otherwise share a same name.

DETAILED DESCRIPTION

Disclosed herein are example apparatus, systems, methods, and articlesof manufacture that enable entities or persons, referred to herein asverifiers, to verify whether a person has recently tested negative foran infectious disease (e.g., a pathogen, a virus, a bacteria, etc.)before granting the person access to a particular location or area. Thisenables a verifier to maintain a safe environment for the people in theparticular area and reduce the likelihood of infection. Exampleverifiers may include airlines, offices, malls, libraries, sportingarenas, schools, theatres, retailers, utilities, employers, governments,facility managers, and/or any other entity or person that desires tocontrol access to a particular location. Many examples disclosed hereinare described in connection with testing for pathogens, viruses, andother infectious diseases. However, it is understood that any examplesdisclosed herein can be implemented in connection with testing for anyanalyte of interest.

In examples disclosed herein, a person, referred to herein as a user,may be tested for a particular infectious disease. If the results arenegative, a digital pass (which may also be referred to as an electronicpass, a digital health pass, an electronic health pass, a health pass, adigital health card, an electronic health card, or a health card) isgenerated that can be stored on the user's electronic device, such as,for example, his/her smartphone, smartwatch, etc. In some examples, thedigital pass includes a code such as, for example, a Data Matrix Code, aQuick Response (QR) code, a bar code, and/or other machine-readablecode. In some examples, the digital pass code includes a useridentification (e.g., a user account ID) and a test kit identificationassociated with a test kit used to test the user. In other examples, thedigital pass code can include other information. When the user arrivesat a verifier location, a verifier can scan the digital pass code of thedigital pass on the user's electronic device to confirm the user hasbeen tested and the test was negative (i.e., the user is not infectedwith the pathogen subject to the test). In some examples, the verifieruses a verifier device, such as a smartphone, a handheld scanner, or amounted scanner communicatively coupled to a computer to scan thedigital pass code. In some examples, the scanner is a camera. In someexamples, a record of the user's test result is stored in a digital passmanagement system. The verifier can check the identity of the user andtheir test result with the digital pass management system. The digitalpass code enables the verifier to quickly and accurately obtainidentifying information about the user that can be used to confirmwhether the user has recently been tested and whether the test resultwas negative for the infectious disease. If the digital pass is valid,the verifier can allow the user to access the location. However, if theuser does not have a digital pass, or the digital pass is invalid orexpired, the verifier can deny the user access to the location, therebyreducing the risk of infection to others in the location.

In some examples, the user is tested by a tester (e.g., medicalprofessional such as a nurse, a doctor, etc.) at a testing facility(e.g., a doctor's office, hospital, medical clinic, etc.). In someexamples, the user's electronic device generates a unique identity codeto identify the user. The tester can scan the identity code (e.g., witha tester electronic device such as a tablet or smartphone) to create arecord of the user and the test with the digital pass management system.The results of the test are stored with the user's record in the digitalpass management system.

In some examples, each user device, tester device, and verifier deviceoperates an application that enables the persons and devices tointerface with the digital pass management system. The digital passmanagement system stores account information, test results, and otherinformation. The digital pass management system provides an interfacebetween the various entities.

In some examples, the verifier is a workplace that desires to keep theiremployees safe. The verifier may require that the employees have a validdigital pass every day the employees enter the workplace. In someexamples, the digital pass expires after a certain period of time afterbeing tested (e.g., 5 days, 7 days, 10 days, etc.). Therefore, theemployees may need to be tested multiple times and/or on a regularbasis.

The examples disclosed herein benefit all parties, including theemployees, the employers (the verifiers), and the testers. From anemployee standpoint, for example, the examples disclosed herein enablethe employee to safely return to work, which could be a more effectiveand productive environment than working remotely or could be theemployee's only option to work if they cannot perform their dutiesremotely. This also encourages employees to be better citizens bymaintaining awareness of their health and risk to others. From anemployer standpoint, for example, the examples disclosed herein can beused to reinforce the importance of employee safety at the workplace,have confidence in the safety of the workplace, manage risk to employeesat the workplace, understand who has access to a site, verify employee'spass ad-hoc, act locally based on high frequency data, and access datathat may inform access policies to the workplace. From a testerstandpoint, for example, the examples disclosed herein enable testers toadminister tests and record results efficiently, manage throughput ofemployees in a reasonable fashion, and maintain the safety of employeesawaiting testing and results. These and other benefits are similarlyachieved in connection with other types of verifier organizations, suchas schools, malls, airlines, sports arenas, etc.

FIG. 1 illustrates an example digital pass management system 100constructed in accordance with the teachings of this disclosure. Thedigital pass management system 100 interfaces with multiple persons orentities and/or distributes software to such persons or entities tofacilitate the example digital pass verification processes disclosedherein. For example, the example digital pass management system 100 canbe used to facilitate the generation of an digital pass for a user(e.g., a person) and enable a verifier to grant or deny access to theuser based on the digital pass. FIG. 1 shows an example user 102, anexample tester 104, and an example verifier 106. In this example, theuser 102 has a first electronic device 108 referred to herein as a userdevice 108, the tester 104 has a second electronic device 110 referredto herein as a tester device 110, and the verifier 106 has a thirdelectronic device 112 referred to herein as a verifier device 112. Whileonly one user, tester, and verifier are illustrated, it is understoodthat the example digital pass management system 100 can support multiple(e.g., hundreds, thousands, millions, etc. of users) users, testers,and/or verifiers.

The verifier 106 can represent any person or entity that desires toverify a health status of a person (e.g., the user 102) before grantingaccess to a physical location. The health status includes informationrelated to a person's health such as, for example, a positive ornegative result from a diagnostic test for an infectious disease. Theverifier 106 may be an airline, an office, a school, a mall, a library,other businesses, a government, a park ranger, other facility managers,etc. For example, the verifier 106 may be an airline gate agent whochecks tickets and digital passes of the user 102 prior to boarding aplane. In another example, the verifier 106 may be a security agent orother person who checks the pass of the user 102 prior to the userentering an office building. The verifier 106 uses the verifier device112 to check the health status of the user 102, as disclosed in furtherdetail herein. In some examples, the verifier device 112 is a mobileelectronic device, such as a smartphone, a tablet, a laptop computer, ahandheld code scanner, etc. In other examples, the verifier device 112can be implemented as a non-mobile electronic device, such as a desktopcomputer, a kiosk, a non-mobile interne connected device capable ofscanning a QR code, Data Matrix Code, and/or a barcode, etc.

The user 102 can represent any person that desires to access thelocation regulated by the verifier 106. The user 102 can interact withthe user device 108 to create a digital pass account, receive and viewresults of a diagnostic test, and/or display a digital pass, asdisclosed in further detail herein. The user device 108 is an electronicdevice that is carried by the user 102. In this example, the user device108 is a smartphone. However, in other examples, the user device 108 canbe implemented by any type of mobile or non-mobile electronic device,such as a tablet, a smartwatch, a laptop computer, a desktop computer,etc.

The tester 104 can represent any person or entity, such as a nurse, adoctor, a testing facility, a hospital, a clinic, etc. that tests asample from a person/user to be tested for an infectious disease (e.g.,a disease caused by a virus, a bacteria, etc.). The tester 104 caninteract with the tester device 110 to match the user 102 with a testingkit, enter the test results, etc., as disclosed in further detailherein. In this example, the tester device 110 is a tablet. However, inother examples, the tester device 108 can be implemented by any type ofmobile or non-mobile electronic device, such as a smartphone, a laptopcomputer, a desktop computer, etc.

The digital pass management system 100, the user device 108, the testerdevice 110, and the verifier device 112 communicate via a network 114,such as, for example, the Internet. In some examples, each of the userdevice 108, the tester device 110, and the verifier device 112 downloadsan application through which the digital pass management system 100, theuser device 108, the tester device 110, and the verifier device 112 cancommunicate. The applications may be specific to the type of entity. Forexample, as shown in FIG. 1, the user device 108 includes a userapplication 116, the tester device 110 includes a tester application118, and the verifier device 112 includes a verification application120. In some examples the applications are downloaded onto therespective devices from the digital pass management system 100 oranother entity, such as, for example, the Apple App Store or the GooglePlay Store. Thus, the example application disclosed herein can utilizedifferent operating systems. The digital pass management system 100, theuser device 108, the tester device 110, and the verifier device 112 maycommunicate and view information provided in the applications.

While many of the example operations disclosed herein are described inconnection with functions performed by the specific applications, theseoperations are not limited to functions performed by an applicationdownloaded onto a device. Instead, the operations can be performed via aweb browser or web-based applications. In some such examples, one ormore of the operations can be performed remotely, such as by the digitalpass management system 100, and displayed on the respective devices.Also, in some examples, the operations of the applications disclosedherein are cloud based, partially cloud based, or edge based.

FIG. 2 is a block diagram of the example user device 108. As disclosedabove, in some examples, the user device 108 is implemented as asmartphone. However, in other examples, the user device 108 can beimplemented as any other type of mobile or non-mobile electronic device.In this example, the user device 108 includes an example processor 200,an example memory 202, an example transceiver 204, an example display206 (e.g., a capacitive touchscreen), and an example camera 207. Thetransceiver 204 can be any type of wired or wireless hardware, firmware,or software for enabling communication with other devices, such as via awireless internet connection, Bluetooth®, Ethernet connection, etc. Theuser application 116 can be stored in the memory 202 and executed by theprocessor 200. The user application 116 includes an example scheduler208, an example notifier 210, an example code generator 212, an exampletime comparator 214, an example analyzer 216, and an example output 218.Operation of the user application 116 is disclosed in further detailbelow.

FIG. 3 is a block diagram of the example tester device 110. In someexamples, the tester device 110 is implemented by a mobile electronicdevice such as a smartphone, a laptop computer, a tablet, etc. In otherexamples, the tester device 110 can be implemented by a non-mobileelectronic device such as a desktop computer, a medical instrument, aserver, etc. The tester device 110 includes an example processor 300, anexample memory 302, an example transceiver 304, and an example display306. In this example, the tester device 110 also includes a camera 308.The camera 308 can be used to take pictures and/or scan codes, such asQR codes, as disclosed in further detail herein. The camera 308 can bepart of the tester device 110 (e.g., a camera built into a smartphone)or communicatively coupled to the tester device 110 (e.g., a handheldscanner in wireless communication with the tester device 110). Thetester application 118 can be stored in the memory 302 and executed bythe processor 300. The tester application 118 includes an example recordgenerator 310, an example test selector 312, an example sample indicator314, an example comparator 316, and an example reader 318. Operation ofthe tester application 118 is disclosed in further detail below.

FIG. 4 is a block diagram of the example verifier device 112. In someexamples, the verifier device 112 is implemented by a mobile electronicdevice, such as a smartphone, a laptop computer, tablet, etc. In otherexamples, the verifier device 112 can be implemented by a scanner suchas, for example, a handheld code scanner. In other examples, the userdevice 108 can be implemented as any other type of mobile or non-mobileelectronic device. The verifier device 112 includes an example processor400, an example memory 402, an example transceiver 404, an exampledisplay 406, and an example camera 408. The camera 408 can be part ofthe verifier device 112 (e.g., a camera built into a smartphone) orcommunicatively coupled to the verifier device 112 (e.g., a mounted or ahandheld scanner in wireless communication with the verifier device112). The verifier application 120 can be stored in the memory 402 andexecuted by the processor 404. The verifier application 120 includes anexample detector 410, an example certifier 412, and an example notifier414. Operation of the verifier application 120 is disclosed in furtherdetail below.

FIG. 5 is a block diagram of the example digital pass management system100. In some examples, the digital pass management system 100 is anapplication server that supports the applications executed on the otherdevices. The digital pass management system 100 includes an exampleprocessor 500, an example database 502, an example record generator 504,an example validator 506, and an example transceiver 508. The database502 can store information regarding users, tests, etc., and/or recordsgenerated by the record generator 504 as disclosed in further detailherein. In some examples, the digital pass management system 100 isowned, controlled, and/or otherwise operated by the verifier entity. Forexample, if the verifier entity is an airline, the digital passmanagement system 100 can be controlled by the airline. As anotherexample, if the verifier entity is an office, the digital passmanagement system 100 can be controlled by the office. In otherexamples, the digital pass management system 100 can be controlled oroperated by the testing entity. For example, the digital pass managementsystem 100 can be provided by a hospital or medical facility. In otherexamples, the digital pass management system 100 can be operated by adifferent entity not related to the verifier entity and/or the testingentity. For example, the digital pass management system 100 could beowned by an entity or company that licenses the applications and/or datafrom the digital pass management system 100 to different verifierorganizations (e.g., airlines, schools, offices, etc.). In some suchexamples, the verifier organizations may have access and/or control tocertain data and/or reporting (e.g., identity of the testers, testresults, etc.), while the company owning the digital pass managementsystem 100 may be responsible for operating the backend datasets andenvironments in which the system(s) operate.

The verifier organizations may have separate accounts within the digitalpass management system 100. The verifier organizations may be able toaccess their account information (e.g., via an application on a device,such as a computer) to add, remove, edit, etc. users or user profiles aswell as modify various parameters (e.g., digital pass expiration times,testing frequency, verification rules, approved testing sites, etc.)associated with the digital pass verification system for the respectiveverifier organization. The verifier organizations can also sync thedigital passes with employment records so that digital passes ofemployees that have left employment can be deactivated. The verifierorganizations may be operated by one or more designated persons from theverifier organization (e.g., a human resources (HR) personnel).

In some examples, the digital pass management system 100 enables theverifier organization to view its list of users/participants and theirassociated information (e.g., ID, digital pass statuses, statuses ofcreating an account, statuses of getting tested, etc.) and generatereports (e.g., a report indicating people who are able to work). Forexample, the verifier organization can generate reports of the usersthat tested positive, negative, and/or invalid, and/or can be filteredby certain dates or ranges (e.g., all users that tested positive betweentwo dates). In some examples, the verifier organization can send thereports to a local, state, or federal government agency (e.g., theCenter for Disease Control (CDC)), another business, another verifierorganization, and/or any other entity (e.g., a parent-teacherassociation). In some examples, the verifier organization manuallygenerates and sends (e.g., via email) the reports. In other examples,the digital pass management system 100 automatically generates and sendsthe reports (e.g., once a week, once a month, etc.). In some examples,the report generation and/or sending could be triggered by an event,such as a request by an outside entity (e.g., a request from the CDC).In some examples, the digital pass management system 100 accessesresults of diagnostic tests, receives sets of user identifications andtest kit identifications from one or more second devices (e.g., testerdevices), generates a report based on the results and receipt of thesets of user identifications and test kit identifications and transmitsthe report to a government agency.

In some examples, the digital pass management system 100 may send outinvites to the users to be added to the verifier organization. Forexample, a place of employment (a verifier organization) can create averifier organization account and send out invites to all of itsemployees (users) to create user accounts via the user application 116.Invitations may also be sent to new hires. The invites may be sent viaemail or text, for example. The invites may include a unique link ortoken code to link/associate the user's account with the verificationorganization account. Additionally or alternatively, a user may be ableto search for certain verifier organizations via the user application116 and then associate his/her account with the verificationorganization's account. In some examples, one or more of the users maybe granted administrative control to access and/or modify the verifierorganization account information. In some examples, a verifierorganization can assign different levels of access to different usersbased on various roles. The digital pass management system 100 can beremote to the tester 104 and/or the verifier 106. One or more operationsdisclosed herein as being implemented by the applications can bepartially or fully executed at the digital pass management system 100.

An example of a digital pass verification process is described below inconnection with the interface screens in FIGS. 6-38. The example processis described in connection with the user 102 being tested for COVID-19.However, it is understood that the example process could be similarlyperformed in connection with assays for detection for any analyte ofinterest including analytes associated with the presence of aninfectious disease and/or for multiple tests or assays for multipleanalytes of interest or diseases.

As disclosed above, the user 102 may download the user application 116on the user device 108. In some examples, the user 102 opens the userapplication 116 on the user device 108 and creates an account with thedigital pass management system 100, such as by agreeing to terms andconditions, agreeing to test consent and privacy conditions, enteringidentifying information (e.g., name, age, email, etc.), and creating ausername and password. In some examples, the user 102 creates an accountin response to receiving an invite from a verifier organization and/or atester. For example, the user's employer may send out invites (e.g., viaemail, via text, etc.) to all employees to create an account using theuser application 116. The unique link or token code may cause theapplication to open on the user device 108, or if not installed, promptthe user 102 to install the user application 116 on the user device 108.Additionally or alternatively, invite may include a unique link or tokencode to associate with the verifier organization. An example of this isshown in FIGS. 36-38 and disclosed in further detail below. In someexamples, the user 102 uses a username and password that the useralready has established with the verifier 106. For example, if theverifier 106 is a place of business such as the user's employer, theuser 102 may use the username and password used to access theiremployer's computer network.

FIGS. 6-11 show example interface screens presented by the userapplication 116 on the display 206 of the user device 108 for creatingan account with the digital pass management system 100. The user 102 canenter his/her email address (and/or a username) and create a password tocreate an account. After creating an account, the user 102 may usehis/her email address (and/or username) and password to sign-in andaccess his/her information via the user application 116. The user 102can manually enter his/her identifying information (e.g., name, address,etc.) in to the user device 108 to create an account. In some examples,in addition to or as an alternative to manually entering the userinformation, the user 102 can scan (e.g., a barcode on the ID) or take apicture of his/her driver's license or other form of ID (e.g., anemployee ID card) to enter his/her user information into the userapplication 116 automatically. For example, the user 102 can use thecamera 207 (FIG. 2) of the user device 108 to scan or take a picture ofthe ID. The information may include the user's full name, addressincluding zip code, date of birth, gender, license number, etc.Additionally or alternatively, the user 102 can manually enter his/herinformation, such as if the user 102 does not have a phone. In someexamples, additional information such as the user's race and/orethnicity may be entered into the user application 116. This informationmay be stored in the database 502 with user's account. In some examples,this information is used to support state reporting (e.g., determiningmetrics of infected demographics).

The user application 116 uses the transceiver 204 to send the accountinformation to the digital pass management system 100 (e.g., via theInternet). The record generator 504 of the digital pass managementsystem 100 creates an account for the user 102 in the database 502. Anexample record or data entry 510 for the user account is shown in FIG.5. As shown, the data entry 510 can include the user's name, date ofbirth (DOB), email address, and/or other identifying information. Therecord generator 504 of the digital pass management system 100 alsocreates a unique user account ID (e.g., a serial number) for the user'saccount, as shown in the data entry 510 in FIG. 5. The user account IDcan be used to identify the user 102 during the digital passverification process. The digital pass management system 100 sends theuser account ID to the user device 108, which can then be stored in thememory 202.

The user 102 then gets tested for the infectious disease or pathogen. Insome examples, the user 102 schedules an appointment with the tester104. In some examples, the user 102 uses the scheduler 208 in the userapplication 116 on the user device 108 to search for testing facility,to schedule an appointment with a testing facility, and/or schedule atelehealth session. The scheduler 208 may provide an interface thatallows the user to search for testing facilities within a certaingeographical location. In some examples, the scheduler 208 automaticallyreturns testing facilities within a certain radius (e.g., 20 miles) ofthe user's zip code or location, which was obtained during the accountsetup process. In some examples only certain testing facilities that areapproved by the verifier 106 are displayed (e.g., partner testingfacilities). In some examples, the scheduler 208 interfaces with thetesting facilities' schedule applications or programs to enable the user102 to schedule an appointment through the user application 116.Additionally or alternatively, the scheduler 208 may provide a link toaccess the testing facilities' sites for scheduling. The scheduler 208can provide a link to telehealth services to order tests and/or schedulea telehealth session. The scheduler 208 may save the scheduledappointment with the user account in the memory 202 of the user device108 and/or in the database 502 with the user's account. In someexamples, the notifier 210 in the user application 116 providesreminders or alerts to the user when an appointment is approaching. Inother examples, the user 102 can use another application to schedule thetest or schedules the test without an application such as, for example,by calling the tester 104 or testing facility. In still other examples,the user 102 does not schedule an appointment, but merely arrives at thetesting facility to be tested. In some examples, the tester application118 provides the tester 102 with a schedule of all the scheduled tests.In some examples, the tester application 118 supports appointments fromwithin the organization and/or from outside of the organization.

In some examples, to help identify the user 102 and link the user's testto the user's account, the code generator 212 of the user application116 generates an identity code, such as a machine-readable code. In someexamples, the identity code may be a 1D code such as a bar code. In someexamples, the identity code may be a 2D code such as a Data Matrix Codeor a QR code. Other examples may use other types of codes orcombinations of codes including, for example, other machine-readablecodes. In some examples, the identity represented in the code containsthe user account ID for the user 102. In particular, the code generator212 of the user application 116 converts the user account ID into thecode format. The identity code is displayed on the user device 108 sothat the user 102 can present the identity code to the tester 104. FIG.12 shows an example identity code 1200 presented on the display 206 ofthe user device 108. In this example, the identity code 1200 is a QRcode. However, in other examples, the identity code 1200 can be anothertype of code. In some examples, the identity code 1200 is presented inresponse to a user selection to present the identity code 1200 (e.g.,selecting a “Display ID” button on the display 206). FIG. 13 showsanother example interface on the display 206 of the user device 108showing the profile of the user 102.

FIGS. 14-25 show example interface screens presented on the display 306of the tester device 110. The tester 104 uses the record generator 310of the tester application 118 to create a test record for the user 102.FIGS. 14 and 15 show example interface screens presented by the testerapplication 118 on the display 306 of the tester device 110 for thecreation of a new test record. In some examples, the tester 104 logsinto the tester application 118 with a unique login name and/orpassword. In some examples, as shown in FIG. 15, the tester 104 can askthe user 102 if he/she has experienced any symptoms. The tester 104 canenter the results into the tester application 118. Additionally oralternatively, the user 102 could enter his/her results into the testerapplication 118 on the tester device 110 or into the user application116 on the user device 108. In some examples, the user 102 is promptedwith targeted questions directed to particular physiological conditions,behaviors, and/or activities. In some examples, the tester application118 provides a link to a list of symptoms provided by the Center forDisease Control and Prevention (CDC). In other examples, the symptomsare stored in the memory 302. In some examples, the tester application118 prompts the tester 104 to gather information from the user 102regarding the user's travel history, health conditions and/or history,family health history, lifestyle, etc.

In some examples, details related to the user's symptoms, user's travelhistory, health conditions and/or history, family health history,lifestyle, etc. are presented to the user 102 via the user application116 and stored in the memory 202 of the user device 108. In someexamples, some or all of this information may be shared between the userapplication 116 and the tester application 118. In some examples, someor all of this information may be shared between the user application116 and digital pass management system 100.

To identify the user 102, the tester 104 uses the camera 308 of thetester device 110 to scan the identity code 1200 on the user device 108.For example, FIG. 16 shows the display 306 on the tester device 110,which is displaying the view from the camera 308. The tester 104 alignsthe user device 108 in the view of the camera 308. The testerapplication 118 detects and interprets the identity code 1200 to obtainthe user account ID. The tester application 118 sends the user accountID to the digital pass management system 100. The digital passmanagement system 100 searches the database 502 for the correspondingrecord (e.g., the data entry 510) and returns the name and/or otheridentifying information of the user 102. For example, FIG. 17 shows thename of the user “Jane Doe” and user's birthday “Jan. 1, 2001” on thedisplay 306 of the tester device 110. In some examples, the tester 104may ask the user 102 for physical identification (e.g., a driver'slicense, a state ID, etc.) to confirm the user's identity. The user 102may show his/her identification to the tester 104. If the ID matches thename and birthday on the tester device 110, the tester 104 can thenselect “Photo ID Verified” as shown in FIG. 18. If not, the tester 104can select “Unable to Verify.” In some examples, if the user 102 doesnot have his/her user device 108, the user 102 can use his/her ID orother identifying means to confirm their identity with the test 104. Insome examples, the user 102 may enter his/her username and/or passwordinto the tester application 118 on the tester device 110.

In some examples, the tester 104 uses the camera 308 to scan the user'sdriver's license or other ID (e.g., take a picture of the ID, scan acode (e.g., a barcode) on the ID, etc.). The record generator 310 cancreate a record based on data obtained from the scanned ID and/orcommunicate with the digital pass management system 100 to obtain arecord based on data obtained from the scanned ID. Additionally oralternatively, in some examples, the user 102 can scan his/her driver'slicense or other ID with the user device 108 (e.g., with the camera 207of the user device 108). In such an example, the user application 116can create a record with data obtained from the scanned ID and/orcommunicate data to the tester device 110 and/or digital pass managementsystem 100.

The test to be performed is a medical diagnostic test including, forexample, a rapid diagnostic test (RDT). The diagnostic test detects apresence or an absence of an analyte of interest, such as an infectiousdisease, a pathogen, an antibody, etc. The test can be performed usingany type of testing kit, device, and/or equipment. Different tests mayrequire different types of samples from a user. A sample can include anasal swab, an oral fluid swab, blood, urine, etc.

The test or assay can be any test or assay able to detect an analyte ofinterest. The analyte can be monovalent (monoepitopic) or polyvalent(polyepitopic), synthetic or natural, antigenic or haptenic, and may bea single compound or plurality of compounds which share at least onecommon epitopic or determinant site. The analyte can be a nucleic acid,a protein, a nucleocapsid protein, an antibody or an antigen. Theanalyte can be a part of a cell such as bacteria or a cell bearing ablood group antigen such as A, B, D, etc., or an HLA antigen, plasmamembrane receptors or a microorganism, e.g., bacterium, fungus,protozoan, or virus. The analyte can also be a chemical compound, suchas a drug or a metabolite thereof. In some examples, the test is anassay to detect an analyte associated with an infectious disease.

In some examples, the test is performed using a disposable test kit,such as a disposable lateral flow test kit. An example disposablelateral flow test kit that may be used is the BinaxNOW® test kitmanufactured by Abbott Laboratories, having headquarters in Abbott Park,Ill., USA. In some examples, each test kit contains a unique test kit ID(e.g., a serial number), which may be generated by the manufacturerand/or distributer. The test kit ID may be displayed as a test kit code(e.g., a machine-readable code, such as a QR code) on the test kit. Inother examples, the test may be performed using a laboratory analyzerdevice (e.g., a molecular or clinical chemistry analyzer device). Insome examples, the test may be performed using apoint of care laboratoryanalyzer device such as the ID NOW™ analyzer manufactured by AbbottLaboratories. In some examples, test cartridges are used with thelaboratory analyzer device. In some such examples, each cartridgecontains a unique test kit ID generated by the manufacturer and/ordistributer.

In some examples, the test selector 312 of the tester application 118analyzes the information provided including, for example, user symptoms,travel history, health conditions and/or history, family health history,lifestyle, etc. to determine what diagnostic tests should be performed.For example, the test selector 312 may determine what analyte ofinterest or infectious diseases a user may have been exposed to based onthe data derived from the user's information. The sample indicator 314prompts the tester 104 as to what sample or samples to gather from theuser 102 based on the test determined by the test selector 312. Forexample, if the test selector 312 determine that the user 102 should betested for COVID-19, the sample indicator 314 prompts the tester 104 togather a sample of nasal secretions using, for example, a nasopharyngealswab.

When the tester 104 is ready to perform the test, the tester 104 canscan a code on the test kit. In some examples, the tester 104 selects anoption on the screen of the tester device 110 such as, for example,“Scan Test Kit” as shown in FIG. 19. The tester 104 uses the camera 308on the tester device 110 to scan a test kit code 2000 on a test kit2002, as shown in FIG. 20. Additionally or alternatively, tester 104 canuse another device to obtain scan the test kit code 2000, such as amounted or a handheld scanner that is communicatively coupled to thetester device 110. In this example, the test kit 2002 is a disposablelateral flow test kit. In other examples, such as when the test is to beperformed using a laboratory analyzer device, the tester 104 can scan atest kit code on a test cartridge that is used to insert the sample intothe laboratory analyzer device. In this example, the test kit code 2000is a Data Matrix Code. In other examples, the test kit code 2000 can beanother type of code, such as a bar code or a QR code.

The test kit code 2000 contains the test kit ID (e.g., a serial ID, lotID, and/or expiration date from the manufacturer) associated with thetest kit 2002. As disclosed herein, each test kit may include a uniquetest kit ID that is generated for every test kit. The record generator310 of the tester application 118 detects and interprets the test kitcode 2000 to obtain the test kit ID. The tester application 118 sendsthe test kit ID to the digital pass management system 100, which storesthe test kit ID with the user's account. For example, as shown in FIG.5, the data entry 508 includes a test kit ID and date of the test.

In some examples, the validator 506 of the digital pass managementsystem 100 verifies or authenticates the validity of the test kit bycomparing the test kit ID with a list of valid test kit IDs from themanufacturer. Test kits with IDs that are not included in a list ofvalid test kit IDs may be counterfeit. In some examples, the validator506 of the digital pass management system 100 verifies the validity ofthe test kit by evaluating an expiration date of the test kit. In someexamples, the validator 506 of the digital pass management system 100verifies the validity of the test kit by evaluating a recall status ofthe test kit. In some examples, the validator 506 of the digital passmanagement system 100 verifies the validity of the test kit byevaluating if the test kit has already been used. If the validator 506determines that a test kit is not a valid test kit, the digital passmanagement system 100 notifies the tester 104 (e.g., by exchangingcommunications between the transceiver 508 and the transceiver 304).After a test kit is used, the record generator 504 records the test kitas being used. Any attempt to use the test kit again will result in thevalidator 506 indicating that the test kit is not valid.

In some examples, before or after scanning the test kit code 2000, thetester application 118 displays instructions for how to obtain a samplefrom the user 102 and/or use the test kit 2000. The instructions arebased on what sample type the sample indicator 314 selected for thetest. For example, FIG. 21 shows an interface screen with a procedurefor collecting the sample and performing the test with the test kit2000. In some examples, the instructions are specific to the type oftest kit or test cartridge that has been scanned.

In some examples, the test is performed at the point of care. That is,the test is performed at the location where the sample was gathered fromthe user, such as for example, at the testing facility or a medicaloffice or clinic. In some examples, a sample is gathered and a test isperformed at the user's home. In other examples, the sample is shippedto a remote location, and the test is performed at the remote location.For example, the testing facility may obtain the sample from the user102 and ship the sample to the remote testing facility. As anotherexample, the user 102 may obtain his/her own sample (e.g., from anat-home sample kit) and ship the sample the remote testing facility. Insome examples, such as with a disposable lateral flow test kit, theresults are provided via a visual indication (e.g., one or more lines orcolors) on the test kit. In other examples, such as with a laboratoryanalyzer device, the results are provided on a digital screen of thelaboratory analyzer device.

When the test is complete, the tester 104 interprets the test results.For example, via the tester application 118, the tester 104 can select“Interpret New Test” as shown in FIG. 22 to enter the results. In someexamples, the tester 104 interpreting the results of the test is thesame tester 104 who gathered the samples (in this context “same tester”means the same facility though the individual obtaining the sample andthe individual interpreting results are two different people). In someexamples, the tester 104 interpreting the results of the test isdifferent than the tester 104 who gathered the sample. For example, thetester 104 who gathered the sample may be a medical facility such as,for example, a doctor's office, and the tester 104 who interprets theresults may be a lab technician at a diagnostic laboratory.

In some examples, when viewing and/or interpreting the results, thetester 104 scans the test kit code 2000 on the test kit 2002 again, asshown in FIGS. 23 and 24. In some examples, scanning the test kit code2000 after the test is complete confirms the same test kit 2000 that wasused to perform the test is the same test kit that is being interpreted.In some examples, the comparator 316 of the tester application 118compares the two test kit IDs. Additionally or alternatively, in someexamples, the test kit IDs are sent to the digital pass managementsystem 100 for comparison by the validator 506. In other examples, asecond scan of the test kit ID is not performed.

In some examples, the tester application 118 provides a notification forthe interpretation and entry of the result of the diagnostic test. Forexample, the tester application 118 can present the tester 104 withselectable options for the results of the test, as shown in FIG. 25. Inthis example, the options include positive, negative, and invalid (orinconclusive). In some examples, as shown in FIG. 25, the optionsinclude graphics that match the visual indicators on the test kit 2002.The tester 104 reviews the test results from the test kit 2002 andselects the matching result. The tester application 118, using thetransceiver 304, sends the results along with other identifyinginformation to the digital pass management system 100, where the recordgenerator 504 adds the results to the user's account in the database502, including the date of the test.

In other examples, the camera 308 can be used to obtain an image of thetest kit 2002, and the reader 318 of the tester application 118 analyzesthe image to automatically interpret the results. In such examples, thetester 104 does not need to enter the results into the tester device110. In other examples, such as with a diagnostic test performed by alaboratory analyzer device, the laboratory analyzer device mayautomatically send the results to the tester application 118 and/or thedigital pass management system 100.

In some examples, the tester 104 takes a picture of the used test kit2002 (or at least a portion of the test kit 2002) as evidence of theresults. In some such examples, the picture of the used test kit 2002 issaved in the database 502 with the user's account (as shown in FIG. 5)and/or can be sent to the user 102 as evidence and/or for recordkeeping. For example, the transceiver 508 can transmit at least aportion of the test kit 2002 to the user device 108.

The record generator 504 of the digital pass management system 100 addsthe results to the user account. For example, the data entry 510 in FIG.5 shows the result “Negative” saved with the user account. In someexamples, other information can also be stored in the user account, suchas, for example, the name and location of the testing facility thatperformed the test, the ID of the tester 104, an image of the test kitcode, whether the user 102 has any symptoms, an image of the test kitwhen reviewing the results (for records), etc. The digital passmanagement system 100 sends the results and/or other information (e.g.,the test kit ID) to the user application 116 on the user device 108 by,for example, exchanging communications between the transceiver 508 andthe transceiver 204.

The user application 116 can then access the test results. In someexamples, the test results are sent to the user device 108 via a text,an email, a URL link, etc. In other examples, the test results arepushed to the user application 116. For example, FIG. 26 shows anexample push notification on the user device 108 indicating new resultshave been received. The user 102 may review the results via the userapplication 116 or other means on the user device 108, as shown in FIG.27A. As shown in FIG. 27A, the user application 116 displays informationrelating to the test, such as the date of the test, the name of the user102, and the result of the test. In some examples, the digital passmanagement system 100 sends other information to the user device 108such as, for example, the test kit ID that was used to perform the test,the location of the test, the ID of the tester 104, etc. For example,FIG. 27B shows another example interface that may be displayed by theuser application 116. The interface shown in FIG. 27B includes the dateof the test, the name of the user 102, the result of the test, and thetest kit ID (including the lot and serial number). This information maybe stored in the memory 202 with the results on the user device 108.

The analyzer 216 of the user application 116 determines what the testresults are (e.g., positive, negative, or invalid/inconclusive). In someexamples, in addition to displaying the results, the notifier 210 of theuser application 116 on the user device 108 can present instructions orguidelines (e.g., the CDC guidelines) relating to the infectious diseaseand/or the results. If the results are negative, for example, thepost-testing instructions may be minimal. For example, FIG. 27A shows alist of guidelines for the user 102 to follow. The guidelines may beupdated as new guidelines are released. If the results are positive, forexample, the post-testing instructions may include recommending adoctor's appointment, a follow-up exam, further testing, quarantine,and/or other actions. In some examples, prior to issuing a positiveresult, the tester 104 may call the user 102 to alert the user 102immediately and personally about the positive result.

If the analyzer 216 determines that the results are negative, the codegenerator 212 of the user application 116 on the user device 108generates a digital pass 2800, as shown in FIG. 28A. In other words,when the analyzer 216 determines that a test result is negative, thegeneration of a digital pass is triggered. The digital pass 2800 is arecord that the user 102 tested negative for the infectious diseaseand/or analytes associated with the infectious disease. The digital pass2800 can be used to confirm with a verifier that the user 102 testednegative for the infectious disease, as disclosed in further detailherein. In some examples, the user 102 can access the digital pass(es)by clicking “Go to My Pass” as shown in the interfaces in FIGS. 27A and27B.

If the analyzer 216 determines that the results are positive or invalid(inconclusive), no digital pass is generated. In some examples, thenotifier 210 may alert the user 102 that no digital pass is to begenerated because of the test results. In some examples, the notifier210 provides an indication within the user application 116 that there isno valid digital pass.

If analyzer 216 determines the results are negative, the code generator212 of the user application 116 generates the digital pass 2800 andsaves the digital pass 2800 on the user device 108 (e.g., in the memory202). In some examples, the digital pass 2800 is saved as part of adigital wallet on the user device 108 that can be accessed with orwithout the user application 116. In some examples, the digital walletcontains other digital passes (e.g., for the same infectious diseaseand/or other infectious diseases) and/or other types of passes (e.g.,airline boarding passes, movie tickets, etc.).

In some examples, the digital pass 2800 includes a digital pass code2802. The code generator 212 of the user application 116 generates thedigital pass code 2802. The digital pass code 2802 can be amachine-readable code. In this example, the digital pass code 2802 is aQR code. In other examples, the digital pass code 2802 can be anothertype of code, such as, for example, a bar code, a Data Matrix Code,and/or other types of machine-readable codes. In some examples, togenerate the digital pass 2800, the code generator 212 communicates (viathe transceiver 204) with the tester 104 and/or the digital passmanagement system 100 to access data related to the test kit ID and anobject ID. The object ID is the ID of the user account. In someexamples, the digital pass code 2802 includes the user account ID andthe test kit ID associated with the diagnostic test. Thus, in someexamples, the digital pass code 2802 includes information to identifythe user 102. In other examples, the digital pass code 2802 can includeother identifying information in addition to or as an alternative to theuser account ID and the test kit ID. The digital pass code 2802 enablesthe verifier 106 to quickly, accurately, and safely obtain informationfrom the user 102 that can be used to verify the user 102. The codegenerator 212 embeds the QR code (or other type of machine-readablecode) into the digital pass 2800. In some examples, the code generator212 adds further details to the digital pass 2800 including, forexample, the user's name and an expiration date of the digital pass2800. The output 218 sends the digital pass 2800 to the display 206 forpresentation by the user 102.

In some examples, the digital pass 2800 has an expiration date or time,which represents a threshold number of days or time that the digitalpass 2800 is still valid. After the expiration date or time, the digitalpass 2800 is no longer valid. In some examples, the example timecomparator 214 monitors time to determine when an expiration date ortime is approaching or has passed. The expiration date may be apredetermined number of days after the test, such as five days, sevendays, ten days, etc., for example. In other examples, the expiration maybe based on a certain time (e.g., 30 hours from the diagnostic test). Insome examples, the expiration date or time is based on a pathogenincubation period or contagious period. In some examples, the expirationdate or time is set by the organization or entity associated with theverifier 106. The scheduler 208 monitors the dates and/or times ofexpiration of the digital passes. In some examples, as shown in FIG.28A, the user application 116 displays a calendar showing the currentday and the number of days until the digital pass 2800 expires.Additionally or alternatively, the user application 116 may display alive ticker, such as a day and/or time counter that counts to theexpiration date (e.g., by the day, by the hour, by the minute, but thesecond, etc.). This may enable the user 102 to easily determine how muchtime is left until expiration and plan to retake a test before thecurrent digital pass 2800 expires. In some examples, if the scheduler208 determines that the digital pass 2800 has expired, the notifier 210notifies the user 102 that the pass has expired. In some examples, ifthe scheduler 208 determines that the digital pass 2800 is about toexpire, the notifier 210 notifies the user 102 of the upcomingexpiration. Thus, the scheduler 208 determines a validity of the digitalpass based on the expiration date. In some examples, the notifier 210notifies the user 102 to schedule another test before and/or after theexpiration of the digital pass 2800. For example, if the number of daysleft before expiration drops below a threshold (e.g., one day), thescheduler 208 can display a notification or reminder to schedule a newdiagnostic test. Therefore, the scheduler 208 can display a notificationto the user 102 to schedule a second diagnostic test based on the numberof days since the first diagnostic test and the threshold number ofdays. In some examples, if the user 102 is re-tested before a digitalpass expires, a new digital pass is generated and the old digital passis saved in a library that can be viewed for a certain amount of time.In some examples, the code generator 212 can automatically deletes orotherwise removes expired digital passes from the user application 116when they expire. In other examples, if the user 102 takes another testand passes, the same digital pass 2800 can be updated and used again byextending the expiration date. In some examples, an expired digital passcan still be viewed for a threshold number of days or time after theexpiration. For example, a digital pass may be viewable for up to sevendays after expiration, after which the code generator 212 deletes orotherwise removes the digital pass. However, the result of the test andother information relating to the test can still be viewed in a resultshistory interface. As disclosed in further detail herein, if the user102 attempts to use an expired digital pass, the verifier device 112 candetect the expiration and deny the user 102 access to the verifierlocation.

In some examples, after the user application 116 receives the testresult, and prior to generating the digital pass 2800, the timecomparator 214 determines whether the expiration time or date hasalready passed. This may occur, for example, if there was a delay intesting or sending the results. In some examples, if the expiration hasalready passed, the code generator 212 does not generate the digitalpass 2800. If the expiration date has not already passed, the codegenerator 212 generates the digital pass 2800 as disclosed herein.Therefore, in some examples, the code generator 212 generates thedigital pass 2800 in response to the result being negative and thenumber of days (or time) since the diagnostic test being below athreshold number of days (or time).

FIG. 28B shows another example digital pass 2804 with an example digitalpass code 2806 that can be generated by the code generator 212. Thedigital pass 2804 is substantially the same as the digital pass 2800 ofFIG. 28A, but displays additional information, such as, for example, theresult of the test, the date of the test, and the type of test thatused. Therefore, the digital pass 2800, 2804 is an interface that isgenerated by the code generator 212 of the user application 116. In someexamples, the digital pass 2800, 2804 is re-regenerated each time theuser 102 opens the digital pass 2800, 2804. The digital pass 2800, 2804can include the user identification (e.g., the user's name, the useraccount ID, etc.) and an indicator. The indicator can include thedigital pass code 2802, 2806, the test result, the date of the test,and/or the expiration date, as shown in FIGS. 28A and 28B. The indicatoris generated in response to the result begin negative and the number ofdays (or time) since the diagnostic test being below a threshold numberof numbers (or threshold time). Therefore, the indicator is indicativeof the health status of the user 102.

As disclosed above, in some examples, the code generator 212 may createadditional digital passes (e.g., for the same infectious disease and/orother infectious diseases). In some examples, a single digital pass mayinclude information related to a number of tests infectious diseaseand/or other infectious diseases.

When the user 102 decides to enter the location monitored by theverifier 106, the user 102 displays the digital pass 2800 on the userdevice 108 to the verifier 106. For example, if the verifier 106 is anairline, the user 102 may display the digital pass 2800 to a gate agentbefore boarding the plane. As another example, if the verifier 106 is anoffice (e.g., the user's place of employment), the user 102 can displaythe digital pass 2800 to a person (e.g., a security officer orrepresentative of the employer) in the lobby of the office. In someexamples, the user application 116 on the user device 108 may send thedigital pass 2800 to another device to be displayed. For example, if theuser has a smartwatch with a display screen, the transceiver 204 maytransmit the digital pass 2800 to the user's smartwatch to be displayed.

The verifier 106 uses the camera 408 of the verifier device 112 to reador scan the digital pass code 2802 on the user device 108. For example,FIG. 29 shows the display 406 on the verifier device 112, which isdisplaying the view from the camera 408. Additionally or alternatively,the verifier 106 can use another device to scan the digital pass code2082, such as a mounted or a handheld scanner (e.g., a QR code orbarcode scanner) communicatively coupled to the verifier device 112. Thedetector 410 of the verifier application 120 detects the digital passcode 2802. The certifier 412 interprets the digital pass code 2802 andobtains the user account ID and the test kit ID (and/or otheridentifying information) embedded in the digital pass code 2802. Thecertifier 312 sends (e.g., via the transceiver 404) the user account IDand test kit ID to the digital pass management system 100.

The validator 506 of the digital pass management system 100 inspects therecords to determine whether the user account ID and test kit ID matchthe user account and are still valid (e.g., not expired and stillassociated with the verifier organization). For example, the validator506 may verify the result of the diagnostic test based on the useraccount ID and the test kit ID. In other words, the validator 506 maymatch user account ID and the test kit ID to the result of thediagnostic test. The validator 506 may also determine the number of dayssince the diagnostic test and compare the number of days since thediagnostic test to a threshold number of days. The validator 506 maytransmit a verification outcome (indicating whether the digital pass2800 is valid, invalid, or not found) based on the verification of theresult and the number of days. For example, if the diagnostic testresult is negative and the number of days since the diagnostic testsatisfies (e.g., is below) the threshold number of days, the validator506 transmits a first notice, notification, or message indicating thedigital pass 2800 is valid.

If the number of days since the diagnostic since does not satisfy (e.g.,is greater than) the threshold number of days, the validator 506transmits a second notice, notification, or message indicating thedigital pass 2800 is expired or not valid. In some examples, thevalidator 506 may also transmit the second notice, notification, ormessage if the user account ID has been inactivated or removed from averifier organization associated with the verifier 106 (e.g., if anemployee no longer works with the employer) or another reason.Additionally or alternatively, the validator 506 may transmit the secondnotice, notification, or message if the test result was positive orinconclusive. This helps prevent against fraudulent generation of adigital pass. If validator 506 could not find a diagnostic testassociated/matched with the user account ID and/or the test kit ID, thevalidator 506 transmits a third notice, notification, or messageindicating the digital pass 2800 is not found. In some examples, if theresult was inconclusive (e.g., the sample was contaminated or aninsufficient amount of sample was gathered to effectively conduct thediagnostic test), the validator 506 transmits a fourth notice,notification, or message indicating the result was inconclusive.

In some examples, in addition to or as an alternative to using thenumber of days to determine if the digital pass 2800 has expired, thevalidator 506 may use an amount of time (e.g., 30 hours). For example,the validator 506 may determine an amount of time between performance ofthe diagnostic test and receipt of the user account ID and test kit IDfrom the verifier device 112. When the amount of time satisfies (e.g.,is below) a threshold amount of time, for example, the validator 506 maytransmit the first notice, notification, or message disclosed above toindicate the digital pass 2800 is still valid. When the amount of timedoes not satisfy (e.g., is greater) than the threshold amount of time,for example, the validator 506 may transmit the second notice,notification, or message disclosed above to indicate the digital pass2800 is expired or not valid.

In some examples, the threshold number of days and/or threshold amountof time is set by the verifier organization. Additionally oralternatively, the threshold number of days and/or the threshold amountof time may be based on a biological characteristic of the analyte ofinterest, such as an incubation period of the pathogen and/or acontagious period of the pathogen.

If the digital pass 2800 is valid, the notifier 414 of the verifierapplication 120 displays a positive or an acceptance message (e.g., afirst notice), such as, for example, the valid message shown in FIG. 30.The acceptance message confirms that the user 102 has recently testednegative for the infectious disease or analyte of interest and can beallowed access to the location. If the certifier 412 determines that thedigital pass 2800 is expired or invalid, the notifier 414 of theverifier application 120 can display a negative or denial message (e.g.,a second notice), such as, for example, the message shown in FIG. 31indicating that the pass is expired or not valid. As such, the verifier106 can deny the user 102 access to the location. In some examples, ifthe result of the test was inconclusive, the notifier 414 can displaythe same interface as shown in FIG. 31 or another interface/displayindicating the result was inconclusive. In such an instance, theverifier 106 can decide whether to allow or deny access to the user 102.If a digital pass is not found, the notifier 414 of the verifierapplication 120 can display another message (e.g., a third notice), suchas, for example, the message shown in FIG. 32 indicating that a pass isnot found. In such an instance, the verifier 106 can deny the user 102access. Therefore, the verifier application 120 can display the firstnotice (FIG. 30), the second notice (FIG. 31), the third notice (FIG.32), and/or any other notices to grant or deny the user 102 access tothe location based on the verification outcome and a location of theverifier device 112.

In some examples, instead of or in addition to the validator 506checking whether the digital pass has expired, the digital passmanagement system 100 confirms the result was negative and then sendsthe date of the diagnostic test to the verifier device 112. Then, theverifier application 120 compares the number of days or amount of timesince the diagnostic test to a threshold number of days or amount oftime. Depending on the outcome, the verification application 120 canpresent one of the interfaces shown in FIGS. 30-32. In some examples,this enables the verifier 106 to set their own preferred expirationthreshold through the verifier application 120 and without reliance onthe validator 506 to maintain and/or verify expiration dates.

In some examples, different verifiers can have different expirationtimes or thresholds. For example, a first verifier may have a firstexpiration threshold of seven days and a second verifier may have asecond expiration threshold of five days. These expiration thresholdscan be saved with the digital pass management system 100 and/or in theircorresponding verification applications. When the digital pass 2800 isscanned by the first verifier, the number of days or time since thediagnostic test is compared to the first expiration threshold, and whenthe digital pass 2800 is scanned by the second verifier, the number ofdays or time since the diagnostic test is compared to the secondexpiration threshold. This enables verifier organizations to set theirpreferred expiration thresholds.

In addition to or as an alternative to displaying the verificationoutcome on the verifier device 112, the verifier device 112 canautomatically unlock at least one of a door, a gate, or a turnstilebased on the verification outcome. For example, the user 102 may presenthis/her digital pass 2800 to the verification device 112 (e.g., ascanner at a gate) at a gate of a location managed by the verificationorganization. If the digital pass 2800 is valid, the verificationapplication 120 can unlock the gate to enable the user 102 to access thelocation. If not, the verification application 120 enables the gate toremain locked to deny the user 102 access to the location.

As disclosed above, the user application 116 can be used to managemultiple digital passes for the user 102. Each digital pass can begenerated using the example digital pass verification process disclosedabove. The digital passes can be associated with diagnostic tests forthe same or different analyte of interest. Each diagnostic test may beused to detect a presence or an absence of a certain analyte ofinterest. For example, the user application 116 may store a firstdigital pass with a first digital pass code associated with a firstdiagnostic test for a first analyte of interest (e.g., COVID-19) and asecond digital pass with a second digital pass code associated with asecond diagnostic test for a second analyte of interest (e.g.,influenza), which may be the same or different than the first analyte ofinterest.

In some examples, when a digital pass expires, the user 102 can getre-tested for the same analyte of interest to generate a new digitalpass for that analyte of interest. In some examples, the second orsubsequent diagnostic test may be a different type of test than thefirst diagnostic test. For example, the first diagnostic test may be anantigen test and the second diagnostic test may be an antibody test. Inother examples, other types of tests may be used, such as polymerasechain reaction (PCR)/molecular tests, antigen tests, etc. In someexamples, the first diagnostic test is performed with a first type oftesting equipment (e.g., a disposable test kit) and the seconddiagnostic test is performed with a second type of testing equipment(e.g., a laboratory analyzer device) that is different than the firsttype of testing equipment.

The digital passes can be read by different verifier organizations. Forexample, a first digital pass can be read by a first verifier device ofa first verifier (e.g., a school) when the user 102 desires to enter alocation managed by the first verifier, and a second digital pass can beread by a second verifier device of a second verifier (e.g., anemployer) when the user 102 desires to enter a location managed by thesecond verifier.

In some examples, the user 102 can use the user application 116 tomanage digital passes associated with multiple verifier organizations orentities. For example, various organizations or entities may require adigital pass for access, such as the user's place of employment, theuser's school, an airline, etc. The user 102 can use the userapplication 116 to add organizations to and/or remove organizations fromthe user's account. The user application 116 may store (e.g., in adigital wallet) the digital passes for the user 102 associated with thevarious organizations.

In some examples, the digital pass management system 100 storesinformation associated with each scan of a digital pass such as thetime/date, the person who scanned the pass, the location, the result ofthe scan (e.g., valid, invalid) etc. This may help prevent fraudulentuse of the digital pass (e.g., if a second user attempts to use the samedigital pass in a different location at the same time).

In some examples, in addition to the expiration date of the digital pass2800, other constraints can be placed on a valid digital pass. Forexample, the organization associated with the verifier 106 may desire toprevent or prohibit access to the verifier location on certain daysand/or to allow or prevent access to specific buildings or areas ofbuildings controlled by the organization. In some examples, theorganization may set limits such that the digital pass 2800 is onlyvalid on certain days, within certain time ranges, and/or to certainlocations including, for example, specific turnstiles, elevators, doors,etc. For example, the user's employer may desire to only allow certainemployees on the premises on certain days of the week to stagger theemployees to reduce likelihood of virus transmission. In such anexample, the digital pass 2800 may be invalid on certain days of theweek, which prevents the user 102 from gaining access to the office onthose days. These specific days and/or time ranges can be set by theverifier 106 (e.g., via the verification application 120) and saved withthe user's account in the database 502 and/or on the user application116 with the digital pass 2800. Therefore, the verifier application 120can display different notices including, for example, the first notice(FIG. 30), the second notice (FIG. 31), or the third notice (FIG. 32) togrant or deny the user 102 access to the location based on theverification outcome and at least one of a time of day or a day of theweek.

In some examples, a verifier organization, such as an employer, candeactivate a user's digital pass in the digital pass management system100 when the user leaves the company (e.g., is fired or voluntarilyquits). Then, if the digital pass code 2802 is scanned, the validator506 invalidates the digital pass code 2802 even when the number of dayssince the diagnostic test is below the threshold number of days. In suchan instance, the validator 506 transmits an invalid message to theverifier device 112. Therefore, the verifier application 120 can displaythe first notice (FIG. 30), the second notice (FIG. 31), or the thirdnotice (FIG. 32) based at least in part on an employment status of theuser 102.

In some examples, after the user 102 has received a digital pass, theuser application 116 may require the user 102 to answer a daily healthquestionnaire to ensure the user 102 has not become sick. For example,the analyzer 216 may cause the user application 116 to display a list ofhealth questions to check whether the user has had any recent symptoms(e.g., “Have you had a temperature over 103° F. in the last 24 hours?”,“Have you developed a cough in the last 24 hours?”, etc.). In someexamples, based on the user 102 answers to one or more of the questions,the analyzer 216 deactivates the digital pass 2800 (e.g., prevents thedigital pass 2800 from being displayed), which prevents the user 102from gaining access to the verifier location. If later (e.g., the nextday) the user 102 answers the questions differently, the analyzer 216may re-activate the digital pass such as, for example, when the user 102no longer displays symptoms of an illness. In some examples, dependingon the answers to the health questions, the analyzer 216 may recommendthat a user 102 take a test or, in some situations, that a user does nottake a test.

In some examples, each time the user 102 accesses (e.g., opens) the userapplication 116, the user 102 is required to log in with their accountname and password. In some example, the user application 116 may use oneor more biometrics of the user 102 to grant access (e.g., via facialrecognition using the camera 207, via a thumb print scan, etc.). In someexamples, the user application 116 requires multi-factor authentication(MFA). In some such examples, the MFA is associated with the user'sphone number, which may be stored with the user's account in thedatabase 502.

In some examples, testers or testing facilities can create accounts withthe digital pass management system 100. This enables users to search fortesters or testing facilities near the users. In some examples, certainones of the tester or testing facilities may be registered or approvedby certain verifier organizations.

In some examples, the user application 116 can be used to manage one ormore profile(s)/account(s) and/or digital pass(es) associated with otherpersons related to or associated with the user 102. For example, theuser 102 may be able create and access user accounts(s) and/or digitalpass(es) for younger dependents (e.g., people under the age of 18), suchas the user's children, and/or older dependents, such as the user'sparents or grandparents, via the user application 116. The userapplication 116 may enable the user 102 to add dependents, removedependents, edit dependent account information, etc. The dependent'saccount ID may be linked to the user's account ID in the digital passmanagement system 100. The user application 116 may also store allcurrent and/or prior test results and digital passes associated with thedependents. The user 102 can view all prior tests and present digitalpasses associated with the dependents via the user application 116,similar to the tests and digital passes associated with the user 102 asdisclosed herein. The user 102 can use the user application 116 topresent the dependent's digital passes to certain verifiers to enableaccess. For example, the user 102 may use the user application 116 tomanage a digital pass associated with the user's child. In such anexample, the user 102 may use the user application 116 to present adigital pass for the child to a certain verifier, such as a school whendropping the child off at school or to an airline when boarding anairplane.

For example, FIG. 33 shows an example interface that may be presented bythe user application 116 on the user device 108. The interface shows alist of all profiles or accounts stored and associated with the user'saccount. The user 102 can select to add an additional profile, such as aprofile for a dependent (such as, for example, selecting the ‘+’ symbolshown in FIG. 33). After selecting to add a new profile, the userapplication 116 presents the interface shown in FIG. 34. The user 102can select to create, for example, a dependent profile or anadministrator profile, such as for example, a person who managesmultiple user accounts. The user 102 can select to create a dependentprofile. FIG. 35 shows an interface presented by the user application116 where the user 102 can enter information (e.g., the dependent'sname, birthday, address, etc.) to create a dependent account. The userapplication 116 transmits (e.g., via the transceiver 204) the dependentaccount information to the digital pass management system 100, which isthen stored in the database 502 with the user's account (e.g., in thedata entry 510). The user 102 can then have access to the dependent'saccount and utilize the dependent's account similar to the user's ownaccount as disclosed herein.

As disclosed above, the user 102 can connect or register himself/herselfand/or one or more dependents to one or more verifier organizationaccounts in the digital pass management system 100. This enables theverifier organizations to have access to the user's account informationand/or dependent account information. The verifier organization cancontrol certain parameters (e.g., expiration time) associated with theuser's digital passes for the verifier organization. The user 102 canconnect with an organization via the user application 116. For example,FIG. 36 shows an interface presented by the user application 116 on theuser device 108 where the user 102 can enter a code or ID to connectwith an organization. The code can be provided via an invite message(e.g., via email or text) from the verifier organization. The userapplication 116 obtains the identity of the organization from digitalpass management system 100 and presents the organization information tothe user 102 for confirmation, as shown in FIG. 37. The user 102 canselect to add the connection, as shown in FIG. 38. In this example, theprofile for a dependent is linked to the organization. The same processcan be used to register the user's own account with the verifierorganization.

FIG. 39 shows an example timeline or sequence of events as performedand/or experienced by a user, such as the user 102, during a digitalpass verification process. The example events can be performed in anyother order and any of the events can be removed, replaced, and/orrepeated.

At step 3902, the user 102 downloads the user application 116 onto theuser device 108 and registers with the digital pass management system100. In some examples, the user device 108 initially receives acommunication (e.g., a text, an email, etc.) to download the userapplication 116. For example, the verifier 106 may send communicationsto users (e.g., employees, future passengers, etc.) that intend toaccess the verifier location(s). At step 3904, the user 102 schedules atest. In some examples, the user 102 schedules the test via the userapplication 116. In such an example, the scheduler 208 books anappointment with a testing facility. In some examples, the notifier 210provides alerts or reminders about the upcoming appointment.

At step 3906, the user 102 travels to the testing facility and notifiesthe tester 104. At step 3908, the user 102 provides their identificationand consent for the test. For example, the code generator 212 maygenerate the identity code 1200 (as shown in FIG. 12) on the user device108, which is then scanned by the tester device 110. In some examples,the user 102 also shows his/her physical ID (e.g., a driver's license)to the tester 104. At step 3910, a sample (e.g., a nasal swab, a urinesample, a blood sample, etc.) is taken from the user 102 and given tothe tester 104, and the tester 104 performs the test.

At step 3912, the user device 108 receives the results and the user 102can review the results on the user device 108. In some examples, thenotifier 210 provides an indication (e.g., a push notification) that theresults have been received. At step 3914, if the results are negative,the code generator 212 generates the digital pass 2800 and the digitalpass code 2082 and saves the digital pass 2800 to a digital wallet onthe user device 108. In some examples, the code generator 212 creates anexpiration date associated with the digital pass 2800. The user 102 canthen use the digital pass 2800 until the digital pass 2800 has expired.

At step 3916, the time comparator 214 and scheduler 208 determineswhether the digital pass 2800 has expired (e.g., by comparing thecurrent date to the expiration date of the digital pass 2800). If thedigital pass 2800 has expired, the notifier 210 may provide an alert toremind the user 102 to get tested again, and the example cycle may berepeated.

FIG. 40A shows an example timeline or sequence of events as performedand/or experienced by a tester, such as the tester 104, during a digitalpass verification process. The example events can be performed in anyother order and any of the events can be removed, replaced, and/orrepeated.

At step 4002, the tester 104 downloads the tester application 118 ontothe tester device 110 and registers with the digital pass managementsystem 100. In some examples, the tester device 110 initially receives acommunication (e.g., a text, an email, etc.) to download the testerapplication 118. At step 4004, the tester 104 starts the test process byselecting the next patient. At step 4006, the tester 104 verifies thepatient identity and creates a test record. For example, the reader 318can detect and interpret the identity code 1200 on the user device 108.The record generator 310 creates a record for the test and may send theuser information to the digital pass management system 100 to store withthe user account.

At step 4008, the tester 104 selects a test kit or test cartridge to beused. In some examples, the test kit selector 312 determines which testkit or test cartridge should be used. The tester 104 can use the testerdevice 110 to scan a test kit code on the test kit. The reader 318detects and interprets the test kit code on the test kit to obtain thetest kit ID. The tester application 118 and/or the digital passmanagement system 100 can verify the authenticity of the test kit (e.g.,to ensure the test kit has not been used before, is manufactured by alist of approved manufacturers, has not expired, etc.). The recordgenerator 310 can save the test kit code and/or send the test kit codeto the digital pass management system 100 to be saved with the user'saccount.

At step 4010, the tester 104 collects a sample from the user 102 andperforms the test. At step 4012, the tester 104 captures the testresults. In some examples, the tester 104 enters the results into thetester application 118 (e.g., by selecting one of a plurality ofpredefined options). In some examples, the tester 104 uses the testerdevice 110 to take a picture of at least a portion of the used test kitas evidence. At step 4014, the record generator 310 saves and publishesthe results (e.g., sends the results to the user device 108). In someexamples, the record generator 310 sends the results and/or thepicture(s) to the digital pass management system 100, which sends theresults to the user device 108. In some examples, in addition to viewingthe results, the user 102 can view the picture of the test kit via theuser application 116. In some examples, the user application 116 savesand presents all historical pictures of the test kits associated withthe user 102.

If the results are negative, the example cycle can be repeated when theuser 102 comes back to get retested again (e.g., after expiration of thedigital pass) or an additional test could be ordered and performed todetermine a presence of another analyte of interest, confirm results ofan initial test or determine possible immunity. If the results arepositive, the tester 104 may recommend the user 102 has a consultationwith a licensed physician, at step 4016. At step 4018, additionaltesting may be performed to verify the results. In some examples, aserology test is performed and the test results are sent to a lab. Insome examples, the user 102 is quarantined (e.g., via self-quarantining,quarantined in a medical facility, etc.) for a period of time, as step4020.

FIG. 40B shows an example timeline or sequence of events as performedand/or experienced by a tester, such as the tester 104, during a digitalpass verification process. In this example, a laboratory analyzerdevice, such as the Abbott Laboratories' ID NOW™ analyzer is used fortesting. The example events can be performed in any other order and anyof the events can be removed, replaced, and/or repeated.

Similar to the timeline or sequence of events in FIG. 40A, the testerdevice 110 receives a communication (e.g., an invite) to download thetester application 118 (step 4022), and the tester 104 downloads thetester application 118 (step 4024) and registers with the digital passmanagement system 100 (step 4026).

At step 4028, the tester 104 verifies the patient identity and creates atest record. For example, the reader 318 can detect and interpret theidentity code 1200 on the user device 108. The record generator 310creates a record for the test and may send the user information to thedigital pass management system 100 to store with the user account.

At step 4030, the tester 104 selects a test cartridge to be used in theID NOW™ analyzer. The tester 104 can use the tester device 110 to scan atest kit code on the test cartridge. The reader 318 detects andinterprets the test kit code on the test cartridge to obtain the testkit ID. The tester application 118 and/or the digital pass managementsystem 100 can verify the authenticity of the test cartridge (e.g., toensure the test cartridge has not been used before, is manufactured by alist of approved manufactures, has not expired, etc.). The recordgenerator 310 can save the test kit code and/or send the test kit codeto the digital pass management system 100 to be saved with the user'saccount.

At step 4032, the tester 104 collects a sample from the user 102 andperforms the test. At step 4034, the tester 104 for the test to becompleted. In some examples, the ID NOW™ analyzer has a digital screenthat displays the results of the test. At step 4036, the tester 104records and publishes the results. In some examples, the tester 104enters the results into the tester application 118 (e.g., by selectingone of a plurality of predefined options). In some examples, the tester104 uses the tester device 110 to take a picture of the digital screenas evidence. The record generator 310 saves and publishes the results(e.g., sends the results to the user device 108). In some examples, therecord generator 310 sends the results and/or the picture(s) to thedigital pass management system 100, which sends the results to the userdevice 108. The example cycle can then be repeated with the nextpatient.

FIG. 41 shows an example timeline or sequence of events as performedand/or experienced by a verifier, such as the verifier 106, during adigital pass verification process. The example events can be performedin any other order and any of the events can be removed, replaced,and/or repeated.

At step 4102, the verifier 106 downloads the verifier application 120onto the verifier device 112 and registers with the digital passmanagement system 100. In some examples, the verifier device 112initially receives a communication (e.g., a text, an email, etc.) todownload the verifier application 120. At step 4104, the verifierapplication 120 can display instructions on the verifier device 112 forhow to use the verification application 120.

At step 4106, the verifier 106 uses the verifier device 112 to scan thedigital pass code 2802 on the user device 108. The detector 410 detectsthe digital pass code 2802 and the certifier 412 interprets the digitalpass code 2802 to obtain identifying information (e.g., the user accountID and test kit ID) embedded in the digital pass code 2802. The verifierapplication 120 records the digital pass details (e.g., date, time,location) and/or sends the details to the digital pass management system100 to be saved with the user account (step 4108). If the pass is valid,the verifier 106 can grant the user 102 access to the location (step4110). If not, the verifier 106 can deny the user 102 access to thelocation.

FIGS. 42A, 42B, and 42C show example timelines or sequences of events asperformed and/or experienced by a user, a tester, and a verifier,respectively, in connection with a digital pass verification processimplemented in connection with an employer as the verifier. The employer(verifier) can use the digital pass verification techniques disclosedherein to confirm the employees (users) have recently tested negativefor an infectious disease before allowing the employees to enter theworkplace facilities. The example events can be performed in any otherorder and any of the events can be removed, replaced, and/or repeated.

The timeline in FIG. 42A is similar to the timeline in FIG. 39 for theuser 102. However, in this example, when creating the user account, theuser 102 can add his/her employee ID information to verify associationwith a specific employer. The employee ID information can be saved withthe user account in the database 502. The user 102 may be prompted toenter additional information and/or answer questions related to theuser's recent experiences including, for example, questions abouttravel, symptoms (e.g., current body temperature), proximity to infectedor symptomatic people, etc. The information and/or answers to thequestions may be analyzed to determine if the user 102 qualifies to betested or re-tested. The user 102 may be tested by an internal physicianassociated with the employer (e.g., an onsite testing department) or anexternal physician not associated with the employer. In some examples,the employer can authorize or validate requests for tests via externalphysicians.

The timeline in FIG. 42B is similar to the timelines in FIGS. 40A and40B for the tester 104. However, in this example, the tester 104 may bean internal physician associated with the employer. In other examples,as shown in FIG. 42B, the user 102 can be tested by an externalphysician. In some examples the results are communicated to theemployer. For example, the tester application 118 and/or the digitalpass management system 100 can transmit the test results to the employer(the verifier). In some examples, the results are submitted to the stateor other government agency.

The timeline in FIG. 42C is similar to the timeline in FIG. 41 for theverifier 106. In this example, the employer (the verifier) can set thenumber of days until a digital pass expires. In some examples, theverifier application 120 records the date, time, and location whendigital passes are scanned. In some examples, the verifier 106 may be anautomated machine. For example, the user 102 may scan his/her digitalpass code at a security gate. If the digital pass is valid, the gateautomatically opens to allow entry. Thus, in some examples, no humaninteraction is needed.

FIG. 43 shows an example timeline or sequence of events as performedand/or experienced by a digital pass management system, a user, atester, and a verifier in connection with a digital pass verificationprocess implemented in connection with a school as the verifier. Theexample timeline or sequence is described in connection with the digitalpass management system 100, the user 102 (e.g., a parent or guardian),the tester 104, and the verifier 106 (e.g., a school). The school canuse the digital pass verification techniques disclosed herein to confirmthe staff and/or students have recently tested negative for aninfectious disease before allowing the staff and/or students to enterthe school. The example events can be performed in any other order andany of the events can be removed, replaced, and/or repeated.

At step 4302, the verifier 106 (e.g., the school) performs an onboardingprocess. The verifier 106 (e.g., the school) creates a schoolorganization account with the digital pass management system 100. Theverifier 106 (e.g., the school) can create the account using via theverifier application 120 on the verifier device 112 and/or anotherelectronic device (e.g., a computer). The verifier 106 (e.g., theschool) can log into the digital pass management system 100 to accessand modify information associated with the school organization account.This may be referred to as a school portal. The verifier 106 (e.g., theschool) can create administrative controls and privileges for certainpeople (e.g., human resources (HR) personnel).

At step 4304, the verifier 106 (e.g., the school) can load a schoolroster into the digital pass management system 100. The school rostermay include the names and other identifying information (e.g., parent'snames, email addresses, phone numbers, etc.) associated with each of thestudents. At step 4306, the digital pass management system 100 generatesa unique invitation ID for each student. The unique invitation ID can beused to link the student's account or his/her parent's account to theschool organization account. At step 4308, the digital pass managementsystem 100 sends the invitation IDs to the parents (e.g., via email, viatext message, via regular mail, etc.).

At steps 4310-4314, the user 102 (e.g., a parent) can create a useraccount for himself/herself and/or a dependent account/profile for thestudent via the user application 116 and connect their account(s) to theschool organization account. Examples of this process are disclosedabove in connection with FIGS. 6-11 and 33-38, for example.

At step 4316, the user 102 (e.g., a parent) can use the user application116 to find a testing location and schedule a test (e.g., via thescheduler 208) to have the child tested. In some examples, only testingcenter approved by the verifier 106 (e.g., the school) are to be used.At step 4318, the child is tested. An example of the testing process isdisclosed in connection with FIGS. 40A and 40B. The results of the testsare sent to the digital pass management system 100 and stored with theuser's account.

At step 4320, the digital pass management system 100 releases theresults of the tests to the verifier 106 (e.g., the school) and theassociated users 102 (e.g., the parents). At step 4322, the verifier 106(e.g., the school) can log into their account with the digital passmanagement system 100 to review the results of the students connected tothe school organization account. At step 4324, the user 102 (e.g., aparent) can access the result of the test for his/her child in the userapplication 116. If the user's child tested negative, the userapplication 116 can generate a digital pass for the child, as disclosedin connection with FIGS. 26, 27A, 27B, 28A, and 28B. The user 102 (e.g.,a parent) can use the user application 116 with the digital pass toenable the student to gain entry into the school. The verifier 106(e.g., the school) may scan the digital pass on the user device 108 eachtime the student arrives at the school, for example.

If the user 102 does not have an electronic mobile device (e.g., aphone) to display a digital pass or does not have an electronic mobiledevice capable of displaying a digital pass, a similar digital passverification process can be implemented in which certain information ismailed or emailed to the user 102. For example, FIG. 44 shows an exampletimeline or sequence of events that is similar to FIG. 43 except theuser 102 does not have an electronic mobile device. In this example, atstep 4402, the verifier 106 (e.g., the school) and/or the digital passmanagement system 100 physically mails the instructions and invitationID (which may be referred to as a Connect-ID) to the user 102. In otherexamples, the instructions and invitation ID can be emailed to the user102 who can print the instructions and invitation ID at home. Duringtesting, at step 4404, the user 102 can present the invitation ID to thetester 104. The tester 104 can input the invitation ID into the testerapplication 118 to link the user 102 (and/or the dependent) to the test.At step 4406, the digital pass management system 100 and/or the verifier106 (e.g., the school) can physically mail the results to the user 102or email the results to the user 102, effectively providing the user 102with the results in an analog manner rather than digitally. In someexamples, the digital pass management system 100 and/or the verifier canphysically mail the user 102 the digital pass and/or digital pass codeon a piece of paper or email the digital pass to the user 102 to printout at home. The user 102 can then present the piece of paper to theverifier 106 as a pass.

While in some of the examples disclosed herein the tester 104 performsthe test, in other examples, the user 102 can perform the testthemselves. For example, the test may be performed via an at-homedisposable test kit (e.g., a lateral flow test strip). In some examples,the user application 116 presents instructions to inform the user 102 onhow to collect the sample for the diagnostic test. In some examples,after the test, the user 102 can then enter the results of the test intothe user application 116. For example, the user application 116 canprovide a notification similar to FIG. 25 for interpretation and entryof the result of the diagnostic test. Additionally or alternatively, theuser application 116 can use the camera 207 to scan the test kit, andthe analyzer 216 can analyze the image and automatically determine theresult of the diagnostic test (e.g., by analyzing the lines and colorson the test kit). In such examples, the user application 116communicates with the digital pass management system 100 to exchange theinformation disclosed above to be used in the generation of the digitalpass 2800. The at-home test kit may be provided by the verifier 106 ormay be paid for individually by the user 102. For example, a userplanning to attend a concert may be responsible for obtaining his/herown test. In such an example, the user may order an at-home test kit(e.g., from the concert organization or a third-party organization). Theuser may conduct the at-home test, upload the results, and receive thedigital pass prior to attending the concert. The user 102 can performthe test anywhere, such as at the user's home, a work place, a publicfacility, a school, etc.

As disclosed above, in some examples, rather than going to a testingfacility to get tested, the user 102 may perform the diagnostic testhimself/herself. In some examples, the user 102 may perform the testwhile being virtually monitored by the tester 104 (which may be referredto, in this example, as telehealth, telemed, telemedicine, electronicmedicine, and/or virtual testing) to ensure the fidelity of the testingprocess. For example, the user application 116 can electronicallyconnect the user device 108 with a telehealth service provide prior tocollection of the sample. In some examples, the user device 108 and thetester device 110 connect via a video conference session. In such anexample, the tester 104 can monitor and watch the user 102 while theuser 102 collects his/her sample and performs the diagnostic. In someexamples, the user 102 can use the user device 108 to can scan the testkit code on the test kit to obtain the test kit ID. The user application116 transmits the test kit ID to the digital pass management system 100to be stored with the user's account. When the test is completed, theuser 102 can show the test kit with the result to the tester 104 via thevideo call. For example, the test kit may include a visual indication(e.g., lines) that indicate the result of the test. The tester 104 canthen enter the results into the tester application 118 and transmit theresults to the digital pass management system 100.

FIG. 45 shows an example timeline or sequence of events as performedand/or experienced by a manufacturer of the test kits. The exampleevents can be performed in any other order and any of the events can beremoved, replaced, and/or repeated.

At step 4502, the manufacturer of the test kits creates serial numbers,lot IDs and expiration dates for the test kits. At step 4504, themanufacture updates a test kit lot manifest. The manufacturing printsand labels the test kits the test kit codes (e.g., QR codes) (step 4506)and distributes the test kits (step 4508). In some examples, the testkit codes include the serial IDs, the lot IDs, and/or the expirationdates.

In some examples, the lot manifest is encrypted and the data is encoded(step 4510) and a secure registry is created (step 4512). In someexamples, this secure registry is saved with the digital pass managementsystem 100 and/or otherwise accessible for checking by the digital passmanagement system 100.

At step 4514, a new test kit is scanned by the tester application 118,which may correspond to steps 4008 and 4030 of FIGS. 40A and 40B. Thetester application 118 sends the test kit ID (e.g., the serial ID, thelot ID, the expiration, etc.) that was embedded in the test kit code(step 4516). The digital pass management system 100 or another systemverifies the test kit ID by matching the test kit ID with the test kitinformation in the secured registry (step 4518). The digital passmanagement system 100 or another system can log the verification event(step 4520) and update the kit inventory (step 4522). The digital passmanagement system 100 or another system sends the results back to thetester application 118 (step 4524). Steps 4510, 4512, 4516, 4518, 4520,and 4522 may be performed by the digital pass management system 100and/or another system, such as a cloud-based server managed by themanufacturer.

While an example manner of implementing the example user application 116and the example user device 108, the example tester application 118 andthe example tester device 110, the example verifier application 120 andthe example verifier device 112, and the example digital pass managementsystem 100 are illustrated in FIGS. 1-5, one or more of the elements,processes and/or devices illustrated in FIGS. 1-5 may be combined,divided, re-arranged, omitted, eliminated and/or implemented in anyother way. Further, the example user application 116, the exampleprocessor 200, the example memory 202, the example transceiver 204, theexample display 206, the example camera 207, the example scheduler 208,the example notifier 210, the example code generator 212, the exampletime comparator 214, the example analyzer 216, the example testerapplication 118, the example processor 300, the example memory 302, theexample transceiver 304, the example display 306, the example camera308, the example record generator 310, the example test selector 312,the example sample indicator 314, the example comparator 316, theexample reader 318, the example verifier application 120, the exampleprocessor 400 the example memory 402, the example transceiver 404, theexample display 406, the example camera 408, the example detector 410,the example certifier 412, the example notifier 414, the example digitalpass management system 100, the example processor 500, the exampledatabase 502, the example record generator 504, the example validator506, and/or the example transceiver 508 of FIGS. 1-5 may be implementedby hardware, software, firmware and/or any combination of hardware,software and/or firmware. Thus, for example, any of the example userapplication 116, the example processor 200, the example memory 202, theexample transceiver 204, the example display 206, the example camera207, the example scheduler 208, the example notifier 210, the examplecode generator 212, the example time comparator 214, the exampleanalyzer 216, the example tester application 118, the example processor300, the example memory 302, the example transceiver 304, the exampledisplay 306, the example camera 308, the example record generator 310,the example test selector 312, the example sample indicator 314, theexample comparator 316, the example reader 318, the example verifierapplication 120, the example processor 400 the example memory 402, theexample transceiver 404, the example display 406, the example camera408, the example detector 410, the example certifier 412, the examplenotifier 414, the example digital pass management system 100, theexample processor 500, the example database 502, the example recordgenerator 504, the example validator 506, and/or the example transceiver508 could be implemented by one or more analog or digital circuit(s),logic circuits, programmable processor(s), programmable controller(s),graphics processing unit(s) (GPU(s)), digital signal processor(s)(DSP(s)), application specific integrated circuit(s) (ASIC(s)),programmable logic device(s) (PLD(s)) and/or field programmable logicdevice(s) (FPLD(s)). When reading any of the apparatus or system claimsof this patent to cover a purely software and/or firmwareimplementation, at least one of the example user application 116, theexample processor 200, the example memory 202, the example transceiver204, the example display 206, the example camera 207, the examplescheduler 208, the example notifier 210, the example code generator 212,the example time comparator 214, the example analyzer 216, the exampletester application 118, the example processor 300, the example memory302, the example transceiver 304, the example display 306, the examplecamera 308, the example record generator 310, the example test selector312, the example sample indicator 314, the example comparator 316, theexample reader 318, the example verifier application 120, the exampleprocessor 400 the example memory 402, the example transceiver 404, theexample display 406, the example camera 408, the example detector 410,the example certifier 412, the example notifier 414, the example digitalpass management system 100, the example processor 500, the exampledatabase 502, the example record generator 504, the example validator506, and/or the example transceiver 508 is/are hereby expressly definedto include a non-transitory computer readable storage device or storagedisk such as a memory, a digital versatile disk (DVD), a compact disk(CD), a Blu-ray disk, etc. including the software and/or firmware.Further still, the example user application 116, the example processor200, the example memory 202, the example transceiver 204, the exampledisplay 206, the example camera 207, the example scheduler 208, theexample notifier 210, the example code generator 212, the example timecomparator 214, the example analyzer 216, the example tester application118, the example processor 300, the example memory 302, the exampletransceiver 304, the example display 306, the example camera 308, theexample record generator 310, the example test selector 312, the examplesample indicator 314, the example comparator 316, the example reader318, the example verifier application 120, the example processor 400 theexample memory 402, the example transceiver 404, the example display406, the example camera 408, the example detector 410, the examplecertifier 412, the example notifier 414, the example digital passmanagement system 100, the example processor 500, the example database502, the example record generator 504, the example validator 506, and/orthe example transceiver 508 of FIGS. 1-5 may include one or moreelements, processes and/or devices in addition to, or instead of, thoseillustrated in FIGS. 1-5, and/or may include more than one of any or allof the illustrated elements, processes and devices. As used herein, thephrase “in communication,” including variations thereof, encompassesdirect communication and/or indirect communication through one or moreintermediary components, and does not require direct physical (e.g.,wired) communication and/or constant communication, but ratheradditionally includes selective communication at periodic intervals,scheduled intervals, aperiodic intervals, and/or one-time events.

In the illustrated example of FIG. 2, the analyzer 216 includes meansfor determining a result of a diagnostic test. In this example, thedetermining means is implemented by any processor structured to performthe corresponding operation by executing software or firmware, orhardware circuit (e.g., discrete and/or integrated analog and/or digitalcircuitry, an FPGA, a PLD, a FPLD, an ASIC, a comparator, anoperational-amplifier (op-amp), a logic circuit, etc.) structured toperform the corresponding operation without executing software orfirmware, but other structures are likewise appropriate. In someexamples, the analyzer 216 implements the determining means.

In the illustrated example of FIG. 2, the code generator 212 includesmeans for accessing a test identification based on the result, accessinga user identification based on the result, constructing amachine-readable code based on the test identification and the useridentification; and incorporating the code into a digital pass. In thisexample, the generating means is implemented by any processor structuredto perform the corresponding operation by executing software orfirmware, or hardware circuit (e.g., discrete and/or integrated analogand/or digital circuitry, an FPGA, a PLD, a FPLD, an ASIC, a comparator,an operational-amplifier (op-amp), a logic circuit, etc.) structured toperform the corresponding operation without executing software orfirmware, but other structures are likewise appropriate. In someexamples, the code generator 212 implements the determining means.

In the illustrated example of FIG. 2, the output 218 includes means fordisplaying or outputting for display the digital pass. In this example,the outputting means is implemented by any processor structured toperform the corresponding operation by executing software or firmware,or hardware circuit (e.g., discrete and/or integrated analog and/ordigital circuitry, an FPGA, a PLD, a FPLD, an ASIC, a comparator, anoperational-amplifier (op-amp), a logic circuit, etc.) structured toperform the corresponding operation without executing software orfirmware, but other structures are likewise appropriate. In someexamples, the output 218 implements the outputting means.

In the illustrated example of FIG. 2, the scheduler 208 includes meansfor determining a validity of the digital pass based on an expirationdate. In this example, the means for determining validity is implementedby any processor structured to perform the corresponding operation byexecuting software or firmware, or hardware circuit (e.g., discreteand/or integrated analog and/or digital circuitry, an FPGA, a PLD, aFPLD, an ASIC, a comparator, an operational-amplifier (op-amp), a logiccircuit, etc.) structured to perform the corresponding operation withoutexecuting software or firmware, but other structures are likewiseappropriate. In some examples, the scheduler 208 implements the meansfor determining validity.

In the illustrated example of FIG. 2, the notifier 210 includes meansfor prompting scheduling of a test when the time comparator determinesthe digital pass is not valid In this example, the prompting means isimplemented by any processor structured to perform the correspondingoperation by executing software or firmware, or hardware circuit (e.g.,discrete and/or integrated analog and/or digital circuitry, an FPGA, aPLD, a FPLD, an ASIC, a comparator, an operational-amplifier (op-amp), alogic circuit, etc.) structured to perform the corresponding operationwithout executing software or firmware, but other structures arelikewise appropriate. In some examples, the notifier 210 implements theprompting means.

A flowchart representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the user application 116 of FIGS. 1and 2 is shown in FIGS. 46A and 46B. The machine readable instructionsmay be one or more executable programs or portion(s) of an executableprogram for execution by a computer processor and/or processorcircuitry, such as the processor 5012 shown in the example processorplatform 5000 discussed below in connection with FIG. 50. The programmay be embodied in software stored on a non-transitory computer readablestorage medium such as a CD-ROM, a floppy disk, a hard drive, a DVD, aBlu-ray disk, or a memory associated with the processor 5012, but theentire program and/or parts thereof could alternatively be executed by adevice other than the processor 5012 and/or embfodied in firmware ordedicated hardware. Further, although the example program is describedwith reference to the flowchart illustrated in FIGS. 46A and 46B, manyother methods of implementing the example user application 116 mayalternatively be used. For example, the order of execution of the blocksmay be changed, and/or some of the blocks described may be changed,eliminated, or combined. Additionally or alternatively, any or all ofthe blocks may be implemented by one or more hardware circuits (e.g.,discrete and/or integrated analog and/or digital circuitry, an FPGA, anASIC, a comparator, an operational-amplifier (op-amp), a logic circuit,etc.) structured to perform the corresponding operation withoutexecuting software or firmware. The processor circuitry may bedistributed in different network locations and/or local to one or moredevices (e.g., a multi-core processor in a single machine, multipleprocessors distributed across a server rack, etc.).

A flowchart representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the tester application 118 of FIGS.1 and 3 is shown in FIG. 47. The machine readable instructions may beone or more executable programs or portion(s) of an executable programfor execution by a computer processor and/or processor circuitry, suchas the processor 5112 shown in the example processor platform 5100discussed below in connection with FIG. 51. The program may be embodiedin software stored on a non-transitory computer readable storage mediumsuch as a CD-ROM, a floppy disk, a hard drive, a DVD, a Blu-ray disk, ora memory associated with the processor 5112, but the entire programand/or parts thereof could alternatively be executed by a device otherthan the processor 5112 and/or embodied in firmware or dedicatedhardware. Further, although the example program is described withreference to the flowchart illustrated in FIG. 47, many other methods ofimplementing the example tester application 118 may alternatively beused. For example, the order of execution of the blocks may be changed,and/or some of the blocks described may be changed, eliminated, orcombined. Additionally or alternatively, any or all of the blocks may beimplemented by one or more hardware circuits (e.g., discrete and/orintegrated analog and/or digital circuitry, an FPGA, an ASIC, acomparator, an operational-amplifier (op-amp), a logic circuit, etc.)structured to perform the corresponding operation without executingsoftware or firmware. The processor circuitry may be distributed indifferent network locations and/or local to one or more devices (e.g., amulti-core processor in a single machine, multiple processorsdistributed across a server rack, etc.).

A flowchart representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the verifier application 120 ofFIGS. 1 and 4 is shown in FIG. 48. The machine readable instructions maybe one or more executable programs or portion(s) of an executableprogram for execution by a computer processor and/or processorcircuitry, such as the processor 5212 shown in the example processorplatform 5200 discussed below in connection with FIG. 52. The programmay be embodied in software stored on a non-transitory computer readablestorage medium such as a CD-ROM, a floppy disk, a hard drive, a DVD, aBlu-ray disk, or a memory associated with the processor 5212, but theentire program and/or parts thereof could alternatively be executed by adevice other than the processor 5212 and/or embodied in firmware ordedicated hardware. Further, although the example program is describedwith reference to the flowchart illustrated in FIG. 48, many othermethods of implementing the example verifier application 118 mayalternatively be used. For example, the order of execution of the blocksmay be changed, and/or some of the blocks described may be changed,eliminated, or combined. Additionally or alternatively, any or all ofthe blocks may be implemented by one or more hardware circuits (e.g.,discrete and/or integrated analog and/or digital circuitry, an FPGA, anASIC, a comparator, an operational-amplifier (op-amp), a logic circuit,etc.) structured to perform the corresponding operation withoutexecuting software or firmware. The processor circuitry may bedistributed in different network locations and/or local to one or moredevices (e.g., a multi-core processor in a single machine, multipleprocessors distributed across a server rack, etc.).

A flowchart representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the digital pass management system100 of FIGS. 1 and 5 is shown in FIG. 49. The machine readableinstructions may be one or more executable programs or portion(s) of anexecutable program for execution by a computer processor and/orprocessor circuitry, such as the processor 5312 shown in the exampleprocessor platform 5300 discussed below in connection with FIG. 53. Theprogram may be embodied in software stored on a non-transitory computerreadable storage medium such as a CD-ROM, a floppy disk, a hard drive, aDVD, a Blu-ray disk, or a memory associated with the processor 5312, butthe entire program and/or parts thereof could alternatively be executedby a device other than the processor 5312 and/or embodied in firmware ordedicated hardware. Further, although the example program is describedwith reference to the flowchart illustrated in FIG. 49, many othermethods of implementing the example digital pass management system 100may alternatively be used. For example, the order of execution of theblocks may be changed, and/or some of the blocks described may bechanged, eliminated, or combined. Additionally or alternatively, any orall of the blocks may be implemented by one or more hardware circuits(e.g., discrete and/or integrated analog and/or digital circuitry, anFPGA, an ASIC, a comparator, an operational-amplifier (op-amp), a logiccircuit, etc.) structured to perform the corresponding operation withoutexecuting software or firmware. The processor circuitry may bedistributed in different network locations and/or local to one or moredevices (e.g., a multi-core processor in a single machine, multipleprocessors distributed across a server rack, etc.).

The machine readable instructions described herein may be stored in oneor more of a compressed format, an encrypted format, a fragmentedformat, a compiled format, an executable format, a packaged format, etc.Machine readable instructions as described herein may be stored as dataor a data structure (e.g., portions of instructions, code,representations of code, etc.) that may be utilized to create,manufacture, and/or produce machine executable instructions. Forexample, the machine readable instructions may be fragmented and storedon one or more storage devices and/or computing devices (e.g., servers)located at the same or different locations of a network or collection ofnetworks (e.g., in the cloud, in edge devices, etc.). The machinereadable instructions may require one or more of installation,modification, adaptation, updating, combining, supplementing,configuring, decryption, decompression, unpacking, distribution,reassignment, compilation, etc. in order to make them directly readable,interpretable, and/or executable by a computing device and/or othermachine. For example, the machine readable instructions may be stored inmultiple parts, which are individually compressed, encrypted, and storedon separate computing devices, wherein the parts when decrypted,decompressed, and combined form a set of executable instructions thatimplement one or more functions that may together form a program such asthat described herein.

In another example, the machine readable instructions may be stored in astate in which they may be read by processor circuitry, but requireaddition of a library (e.g., a dynamic link library (DLL)), a softwaredevelopment kit (SDK), an application programming interface (API), etc.in order to execute the instructions on a particular computing device orother device. In another example, the machine readable instructions mayneed to be configured (e.g., settings stored, data input, networkaddresses recorded, etc.) before the machine readable instructionsand/or the corresponding program(s) can be executed in whole or in part.Thus, machine readable media, as used herein, may include machinereadable instructions and/or program(s) regardless of the particularformat or state of the machine readable instructions and/or program(s)when stored or otherwise at rest or in transit.

The machine readable instructions described herein can be represented byany past, present, or future instruction language, scripting language,programming language, etc. For example, the machine readableinstructions may be represented using any of the following languages: C,C++, Java, C#, Perl, Python, JavaScript, HyperText Markup Language(HTML), Structured Query Language (SQL), Swift, etc.

As mentioned above, the example processes of FIGS. 46A, 46B, 47, 48, and49 may be implemented using executable instructions (e.g., computerand/or machine readable instructions) stored on a non-transitorycomputer and/or machine readable medium such as a hard disk drive, aflash memory, a read-only memory, a compact disk, a digital versatiledisk, a cache, a random-access memory and/or any other storage device orstorage disk in which information is stored for any duration (e.g., forextended time periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm non-transitory computer readable medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media.

“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim employs any formof “include” or “comprise” (e.g., comprises, includes, comprising,including, having, etc.) as a preamble or within a claim recitation ofany kind, it is to be understood that additional elements, terms, etc.may be present without falling outside the scope of the correspondingclaim or recitation. As used herein, when the phrase “at least” is usedas the transition term in, for example, a preamble of a claim, it isopen-ended in the same manner as the term “comprising” and “including”are open ended. The term “and/or” when used, for example, in a form suchas A, B, and/or C refers to any combination or subset of A, B, C such as(1) A alone, (2) B alone, (3) C alone, (4) A with B, (5) A with C, (6) Bwith C, and (7) A with B and with C. As used herein in the context ofdescribing structures, components, items, objects and/or things, thephrase “at least one of A and B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. Similarly, as used herein in the contextof describing structures, components, items, objects and/or things, thephrase “at least one of A or B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. As used herein in the context ofdescribing the performance or execution of processes, instructions,actions, activities and/or steps, the phrase “at least one of A and B”is intended to refer to implementations including any of (1) at leastone A, (2) at least one B, and (3) at least one A and at least one B.Similarly, as used herein in the context of describing the performanceor execution of processes, instructions, actions, activities and/orsteps, the phrase “at least one of A or B” is intended to refer toimplementations including any of (1) at least one A, (2) at least one B,and (3) at least one A and at least one B.

As used herein, singular references (e.g., “a”, “an”, “first”, “second”,etc.) do not exclude a plurality. The term “a” or “an” entity, as usedherein, refers to one or more of that entity. The terms “a” (or “an”),“one or more”, and “at least one” can be used interchangeably herein.Furthermore, although individually listed, a plurality of means,elements or method actions may be implemented by, e.g., a single unit orprocessor. Additionally, although individual features may be included indifferent examples or claims, these may possibly be combined, and theinclusion in different examples or claims does not imply that acombination of features is not feasible and/or advantageous.

FIGS. 46A and 46B are flowcharts representative of instructions executedby the user device 108 (e.g., by the processor 200 of the user device108) to implement the user application 116 and/or otherwise implementoperations performed on the user device 108. In some examples, the user102 downloads the user application 116 onto the user device 108 (e.g.,from the digital pass management system 100, the Apple App Store, and/orthe Google Play Store). In other examples, the user application 116 canbe pre-installed on the user device 108. The user 102 can open the userapplication 116 and create an account (e.g., by entering his/her name,birthday, etc.). Example interfaces screens for creating an account areshown in FIGS. 6-11. At block 4602, the user application 116 receivesand stores (e.g., in the memory 202) the account information entered bythe user 102.

At block 4604, the user application 116 transmits (e.g., communicateswith the transceiver 204 via the internet) the user account informationto the digital pass management system 100 for registration. The recordgenerator 504 of the digital pass management system 100 creates andstores a record of the user account in the database 502. The recordgenerator 504 of the digital pass management system 100 creates a useraccount ID for the user account. The digital pass management system 100transmits (e.g., communicates with the transceiver 508) the user accountID to the user device 102. At block 4606, the transceiver 204 receivesthe user account ID, and the user application 116 stores the useraccount ID (e.g., in the memory 202).

At block 4608, the code generator 212 of the user application 116generates the identity code 1200 (e.g., a QR code, a Data Matrix Code,other machine-readable codes) with the user account ID. The identitycode 1200 can be used to confirm the identity of the user 102 when theuser 102 is tested. The user application 116 stores the identity code1200 (e.g., in the memory 202).

In some examples, to get tested for an infectious disease, the user 102can schedule an appointment. For example, at block 4610, the user 102uses the scheduler 208 of the user application 116 to schedule a testwith a testing facility. In other examples, the user 102 can proceed tothe testing facility without an appointment.

The user 102 shows the identity code 1200 to the tester 104. Forexample, at block 4612, the user application 116 presents the identitycode 1200 on the display 206 of the user device 108 (e.g., FIG. 12). Thetester 104 scans the identity code 104 with the tester device 110. Thetester 104 also performs the test as disclosed herein.

In some examples, the user 102 may perform the test themselves. In somesuch examples, the user application 116 may present instructions toinform the user device 108 how to collect the sample and/or perform thetest. In some examples, the user 102 may enter his/her results into theuser application 116. For example, the user application 116 can providea notification similar to FIG. 25 for interpretation and entry of theresult of the diagnostic test. The user 102 can then select theappropriate result. Additionally or alternatively, the user application116 can use the camera 207 to scan the test kit, and the analyzer 216can analyze the image and automatically determine the result of thediagnostic test (e.g., by analyzing the lines and colors on the testkit). In such examples, the user application 116 communicates with thedigital pass management system 100 to exchange the information disclosedabove to be used in the generation of the digital pass 2800. In otherexamples, a remote tester may monitor the user during the testingprocess. In such examples, the user application 116 can electronicallyconnect with a telehealth service provider prior to collection of thesample. Also, in this example, the remote tester enters the results viaa tester device.

Referring to FIG. 46B, at block 4614, the user application 116 accessesand displays the result on the user device 108. In particular, after thetest, the result is transmitted to the user device 108 by the tester 104and/or the digital pass management system 100 as disclosed herein. Insome examples, the digital pass management system 100 may automaticallytransmit the test result to the user application 116 when the digitalpass management system 100 receives the result from the tester 104. Inother examples, the user application 116 may request the result from thedigital pass management system 100. In some examples, the test kit IDand other information is/are also transmitted to the user device 108.The transceiver 204 receives the results, and the notifier 210 displaysthe results. Examples of these displays are shown in FIGS. 26, 27A, and27B. The notifier 210 of the user application 116 may display differentinformation depending on the result of the diagnostic test. For example,if the result was positive for the infectious disease, the notifier 210of the user application 116 may display certain guidelines orsuggestions. If the result was negative for the infectious disease, thenotifier 210 of the user application 116 may display other guidelines orsuggestions. If the result was invalid (e.g., inconclusive), thenotifier 210 of the user application 116 may present a suggestion totake the test again.

At block 4616, the analyzer 216 of the user application 116 determinesif the result was negative for the infectious disease. In some examples,if the result was not negative (i.e., the result was positive orinvalid), the example process may end, and a digital pass is notgenerated. In other examples, if the analyzer 216 of the userapplication 116 determines that the result was not negative, the exampleprocess may continue with the user 102 scheduling another test (block4610). If the result was negative, at block 4618, the code generator 212of the user application 116 generates the digital pass 2800 includingthe digital pass code 2802 (e.g., a QR code, a Data Matrix Code, and/orother types of machine-readable codes). In some examples, the digitalpass code 2802 includes the account ID associated with the user'saccount and the test kit ID of the test kit used to perform the test.Therefore, the user application 116 accesses the user account ID (e.g.,stored in the memory 202) and the test kit ID (e.g., stored in thememory 202) and generates the digital pass code 2802 based on the useraccount ID and the test kit ID. Example digital passes 2800, 2804 anddigital pass codes 2802, 2806 are shown in FIGS. 28A and 28B. At block4620, the user application 116 saves the digital pass, such as thedigital pass 2800 (e.g., in the memory 202). In some examples, thedigital pass 2800 is saved in a digital wallet on the user device 108,which can be accessed without the user application 116.

The user 102 can then present the digital pass 2800 to one or moreverifiers as needed. At block 4622, the user application 116 presents ordisplays the digital pass 2800 (including the digital pass code 2802) onthe display 206 of the user device 108. The digital pass 2800 can beused to enable the user 102 to gain entry into a location. The digitalpass 2800 can be used multiple times with the same verifier or differentverifiers.

At block 4624, the time comparator 214 of the user application 116determines whether the digital pass 2800 has expired. If the digitalpass 2800 has not expired, the digital pass 2800 is still valid and cancontinue to be used. If the digital pass 2800 has expired, the user 102can get re-tested (e.g., proceeding to block 3810) and the exampleprocess continues from there.

The example process shown in FIGS. 46A and 46B can be repeated each timethe user 102 (and/or a dependent associated with the user 102) istested. The user application 116 can manage multiple digital passes forthe user 102. The example process can be used in connection with thesame type of test (e.g., for a same analyte of interest) or differenttypes of tests (e.g., for different analytes of interest).

FIG. 47 is a flowchart representative of instructions executed by thetester device 110 (e.g., by the processor 300 of the tester device 110)to implement the tester application 118 and/or otherwise implementoperations performed on the tester device 110. In some examples, thetester 104 downloads the tester application 118 onto the tester device110 (e.g., from the digital pass management system 100, the Apple AppStore, and/or the Google Play Store). In other examples, the testerapplication 118 can be pre-installed on the tester device 110.

In some examples, before testing the user 102, the tester 104 creates anew test record by identifying the user 102. As disclosed above, theuser 102 can present the identity code 1200 on the user device 108 tothe tester 104. The tester 104 uses the tester device 110 to scan theidentity code 1200. For example, the tester device 110 may include thecamera 308, which can be used to scan the identity code 1200. In someexamples, the tester application 118 displays the video feed from thecamera 308 to enable the tester 104 to align the identity code 1200 inview of the camera 308. An example of this interface is shown in FIG.16. At block 4702, the record generator 310 of the tester application118 detects and interprets the identity code 1200 to obtain the useraccount ID (and/or other identifying information associated with theuser 102) embedded in the identity code 1200.

At block 4704, the tester application 118 transmits the user account IDto the digital pass management system 100 using, for example, thetransceiver 304. In some examples, the digital pass management system100 returns the name and/or other identifying information associatedwith the user 102 so that the tester 104 can confirm the identity of theuser 102. At block 4706, the tester application 118 receives (e.g. viathe transceiver 304) and presents the user identification information onthe tester device 110. An example user interface showing the useridentification information on the tester device 110 is shown in FIG. 17.In some examples, the tester 104 confirms the user's identity via adriver's license or other form of identification. If the user's identitymatches, the tester 104 proceeds to perform the test. As disclosedherein, various types of tests can be used.

Depending on the type of test, the test kit or test cartridge contains atest kit code with a unique test kit ID. The tester 104 uses the testerdevice 110 to scan the test kit code on the test kit or test cartridge.In some examples, the tester application 118 displays the video feedfrom the camera 308 to enable the tester 104 to align the test kit codein view of the camera 308. An example of this interface is shown in FIG.20. At block 4708, the record generator 310 of the tester application118 detects and interprets the test kit code to obtain the test kit IDembedded in the test kit code.

In some examples, at block 4710, the tester application 118 presentsinstructions on how to perform the test. An example of this interface isshown in FIG. 21. After performing the test, the tester 104 (or anothertester) can rescan the test kit code on the test kit. At block 4712, thetester application scans and interprets the test kit code to receive thetest kit ID. An example of this interface is shown in FIG. 24. In someexamples, this second scan is used to prevent an accidental mix-up oftest kits. In other examples, a second scan is not performed.

At block 4714, the tester application 118 presents a user interface withselectable options for the results of the test. An example of this userinterface is shown in FIG. 25. The tester 104 can select the appropriatetest result. Therefore, the tester application 118 provides anotification for the interpretation and entry of the result of thediagnostic test. At block 4716, the tester application 118 receivesinput (e.g., from the tester 104 selecting the option on the display306) indicative of the result of the diagnostic test.

At block 4718, the tester application 118 transmits the user account ID,the test kit ID (from one or both scans), and the test results to thedigital pass management system 100 (using, for example, the transceiver304). The results are saved in the database 502 with the user accountand sent to the user device 108. In some examples, the testerapplication 118 transmits an image of the test kit used in thediagnostic device to be saved in the database 502. In addition to or asan alternative to sending the information to the digital pass managementsystem 100, the tester application 118 can also send the informationdirectly to the user device 108.

FIG. 48 is a flowchart representative of instructions executed by theverifier device 112 (e.g., by the processor 400 of the verifier device112) to implement the verifier application 120 and/or otherwiseimplement operations performed on the verifier device 112. In someexamples, the verifier 106 downloads the verifier application 120 ontothe verifier device 112 (e.g., from the digital pass management system100, the Apple App Store, and/or the Google Play Store). In otherexamples, the verifier application 120 can be pre-installed on theverifier device 112.

When the user 102 intends to gain access to the location monitored bythe verifier 106, the user 102 can present the digital pass 2800 on theuser device 108. The verifier 106 uses the verifier device 112 to scanthe digital pass code 2802. For example, the verifier device 112 mayinclude the camera 408, which can be used to scan the digital pass code2802. In some examples, the verifier application 120 displays the videofeed from the camera 408 to enable the verifier 106 to align the digitalpass code 2802 in view of the camera 408. An example of this interfaceis shown in FIG. 29. At block 4802, the detector 410 of the verificationapplication 120 detects the digital pass code 2802 displayed on the userdevice 108, and the certifier 412 interprets the digital pass code 2802to obtain the user account ID and the test kit ID. Thus, the verifierapplication 120 can determine the user account ID and test kit ID basedon the digital pass code 2802. In other examples, the digital pass code2802 can contain other identifying information that can be retrieved bythe verifier application 120 when scanning the digital pass code 2802.

At block 4804, the verifier application 120 transmits the user accountID and test kit ID to the digital pass management system 100 (e.g.,using the transceiver 404). In some examples, the validator 506 of thedigital pass management system 100 determines whether the user accountID and the test kit ID match in the user account. The validator 506 ofthe digital pass management system 100 also confirms that the result ofthe test was negative. In some examples, the validator 506 of thedigital pass management system 100 also confirms that the expirationdate has not passed. The digital pass management system 100 transmits averification outcome based on whether the digital pass 2800 isdetermined to be valid, invalid (e.g., expired), or not found to theverifier device 112 (e.g., using the transceiver 508). At block 4806,the verifier application 120 receives (e.g., via the transceiver 404)the verification outcome from the digital pass management system 100.The notifier 414 of the verifier application 120, at block 4808,presents the results. If the digital pass 2800 is valid and not expired,the certifier 412 of the verifier application 120 indicates that thedigital pass 2800 is valid. An example of this interface is shown inFIG. 30. The verifier 106 may then allow the user 102 to enter thelocation.

If the digital pass 2800 is expired or not valid (e.g., because the user102 has been removed from the verifier organization), the certifier 412of the verifier application 120 may indicate the digital pass 2800 isexpired or not valid. An example of this interface is shown in FIG. 31.In such an instance, the verifier 106 can deny the user 102 access tothe location (e.g., an airplane, an office, a mall, a controlled outdoorspace, etc.). In some examples, the user 102 has to get tested again toobtain a new, valid digital pass.

If the digital pass is not found, such as if no user account is found,the certifier 412 of the verifier application 120 may indicate the passis not found. An example of this interface is shown in FIG. 33. In someexamples, in addition to or as an alternative to displaying theverification outcome, the verification application 120 can automaticallyunlock at least one of a door, a gate, or a turnstile based on theverification outcome to enable or deny access to the user 102.

FIG. 49 is a flowchart representative of instructions executed (e.g., bythe processor 500) to implement the digital pass management system 100.As disclosed above, the user 102 can create an account by entering userinformation in the user application 116 on the user device 108. At block4902, the digital pass management system 100 receives the userinformation from the user application 116 and the record generator 504creates a user account. The user account can be saved in the database502. An example data entry 510 for the user account is shown in FIG. 5.At block 4104, the record generator 504 of the digital pass managementsystem 100 creates a unique user account ID for the user account. Atblock 4906, the digital pass management system 100 transmits the useraccount ID to the user device 108 (e.g., using the transceiver 508). Theuser account ID can be used to generate the identity code 1200, thedigital pass 2800, and the digital pass code 2802, as disclosed inconnection with FIGS. 46A and 46B.

As disclosed above, when the user 102 is at the testing facility, thetester 104 scans the identity code 1200 on the user device 108 to obtainthe user account ID. The tester application 118 sends the user accountID to the digital pass management system 100. At block 4908, the digitalpass management system 100 receives the user account ID from the testerdevice 110 (e.g., via the tester application 118) and the validator 506identifies the associated user account. At block 4910, the digital passmanagement system 100 transmits the user name (and/or other identifyinginformation) to the tester device 110 (e.g., using the transceiver 508).The tester 104 can use the user name to confirm the identity of the user102 before or after performing the test.

As disclosed above, after the test is performed, the test kit ID andresult information is/are sent to the digital pass management system100. At block 4912, the digital pass management system 100 receives andstores the test kit ID and result of the test associated with the useraccount. In particular, when the digital pass management system 100receives the test kit ID and the result, the processor 500 associatesthe test kit ID and result of the diagnostic test with the user accountID and saves this information in the database 502 with the user account(e.g., in the data entry 510). Thereafter, the processor 500 can accessthe result of the diagnostic test associated with the test kit ID. Atblock 4914, the digital pass management system 100 transmits the resultof the test to the user device 108 (e.g., using the transceiver 508). Insome examples, in addition to the result, the digital pass managementsystem 100 transmits the test kit ID to the user device 108. The testkit ID may be used in the digital pass code 2802, as disclosed herein.In some examples, the digital pass management system 100 verifies atleast one of an expiration date of the test kit or a recall status ofthe test kit based on the test kit prior to transmitting the result ofthe diagnostic test and the test kit ID. In some examples, the digitalpass management system 100 verifies an authenticity of the test kitbased on the test kit ID prior to transmitting the result of thediagnostic test and the test kit ID to the user device 108. Additionallyor alternatively, the digital pass management system 100 can transmitother information to the user device 108, such as the date of thediagnostic test, the type of test, etc. As disclosed above, the resultcan be used to create a digital pass on the user device 108.

As disclosed above, the verifier 106 can scan the digital pass code 2802on the user device 108 to obtain the user account ID and test kit ID.The verifier application 120 sends the user account ID and test kit IDto the digital pass management system 100. At block 4916, the digitalpass management system 100 receives the user account ID and the test kitID from the verifier device 112 (e.g., via the verifier application120). At block 4918, the validator 506 of the digital pass managementsystem 100 determines whether the digital pass 2800 for the user accountis still valid. In some examples, the validator 506 of the digital passmanagement system 100 confirms that the test kit ID matches the test kitID associated with the user account. The validator 506 verifies theresult of the test based on the user account ID and the test kit ID. Inother words, the validator 506 matches the user account ID and the testkit ID with the test result of the diagnostic test. For example, thevalidator 506 of the digital pass management system 100 determineswhether the result of the test associated with the user account for thattest kit ID is negative. In some examples, the validator 506 of thedigital pass management system 100 confirms whether the digital pass2800 has not expired. For example, the validator 506 can determine anumber of days since the diagnostic test and compare the number of daysto a threshold number of days. If the number of days satisfies thethreshold (e.g., is at or below the threshold), the validator 506determines the digital pass 2800 is still valid. If the number of daysdoes not satisfy the threshold (e.g., is above the threshold), thevalidator 506 determines the digital pass 2800 is not valid. In someexamples, even if the number of days satisfies the threshold, thevalidator 506 can invalidate the digital pass 2800, such as if the user102 is no longer employed at the verifier organization and the verifierorganization has deactivated the user's passes.

At block 4920, the digital pass management system 100 transmits averification outcome (e.g., valid, invalid (expired), or not found),indicating the validity of the digital pass 2800, to the verifier device112 (e.g., using the transceiver 508). The verification outcome caninclude a first notice when the result of the diagnostic test isnegative and the number of days since the diagnostic test is below thethreshold number of days, a second notice when the number of days sincethe diagnostic test is greater than the threshold, or a third noticewhen the digital pass is not found. The verifier application 120displays a message associated with the verification outcome, as shown inFIGS. 30-32.

FIG. 50 is a block diagram of an example processor platform 5000structured to execute the instructions of FIGS. 46A and 46B to implementthe user application 116 of FIGS. 1 and 2. The processor platform 5000can be incorporated into the user device 108. The processor platform5000 can be, for example, a server, a personal computer, a workstation,a self-learning machine (e.g., a neural network), a mobile device (e.g.,a cell phone, a smart phone, a tablet such as an iPad), a personaldigital assistant (PDA), an Internet appliance, a DVD player, a CDplayer, a digital video recorder, a Blu-ray player, a personal videorecorder, a headset or other wearable device, or any other type ofcomputing device.

The processor platform 5000 of the illustrated example includes aprocessor 5012. The processor 5012 of the illustrated example ishardware. For example, the processor 5012 can be implemented by one ormore integrated circuits, logic circuits, microprocessors, GPUs, DSPs,or controllers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor 5012 can represent the processor 200 andimplements the example user application 116.

The processor 5012 of the illustrated example includes a local memory5013 (e.g., a cache). The processor 5012 of the illustrated example isin communication with a main memory including a volatile memory 5014 anda non-volatile memory 5016 via a bus 5018. The volatile memory 5014 maybe implemented by Synchronous Dynamic Random Access Memory (SDRAM),Dynamic Random Access Memory (DRAM), RAMBUS® Dynamic Random AccessMemory (RDRAM®) and/or any other type of random access memory device.The non-volatile memory 5016 may be implemented by flash memory and/orany other desired type of memory device. Access to the main memory 5014,5016 is controlled by a memory controller.

The processor platform 5000 of the illustrated example also includes aninterface circuit 5020. The interface circuit 5020 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), a Bluetooth® interface, a near fieldcommunication (NFC) interface, and/or a PCI express interface.

In the illustrated example, one or more input devices 5022 are connectedto the interface circuit 5020. The input device(s) 5022 permit(s) a userto enter data and/or commands into the processor 5012. In some examples,the input device(s) 5022 can include the display 206, which may be atouchscreen, and/or the camera 207. Additionally or alternatively, theinput device(s) can be implemented by, for example, an audio sensor, amicrophone, a keyboard, a button, a mouse, a touchscreen, a track-pad, atrackball, isopoint and/or a voice recognition system.

One or more output devices 5024 are also connected to the interfacecircuit 5020 of the illustrated example. The output devices 5024 caninclude the display 206 and can be implemented, for example, by displaydevices (e.g., a light emitting diode (LED), an organic light emittingdiode (OLED), a liquid crystal display (LCD), a cathode ray tube display(CRT), an in-place switching (IPS) display, a touchscreen, etc.), atactile output device, a printer and/or speaker. The interface circuit5020 of the illustrated example, thus, typically includes a graphicsdriver card, a graphics driver chip and/or a graphics driver processor.

The interface circuit 5020 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver(e.g., the transceiver 204), a modem, a residential gateway, a wirelessaccess point, and/or a network interface to facilitate exchange of datawith external machines (e.g., computing devices of any kind) via anetwork 5026 (e.g., the network 114, such as the internet). Thecommunication can be via, for example, an Ethernet connection, a digitalsubscriber line (DSL) connection, a telephone line connection, a coaxialcable system, a satellite system, a line-of-site wireless system, acellular telephone system, etc.

The processor platform 5000 of the illustrated example also includes oneor more mass storage devices 5028 for storing software and/or data.Examples of such mass storage devices 5028 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, redundantarray of independent disks (RAID) systems, and digital versatile disk(DVD) drives.

The machine executable instructions 5032 of FIGS. 46A and 46B may bestored in the mass storage device 5028, in the volatile memory 5014, inthe non-volatile memory 5016, and/or on a removable non-transitorycomputer readable storage medium such as a CD or DVD. The memory 202 canbe implemented by any of the aforementioned.

FIG. 51 is a block diagram of an example processor platform 5100structured to execute the instructions of FIG. 47 to implement thetester application 118 of FIGS. 1 and 3. The processor platform 5100 canbe incorporated into the tester device 118. The processor platform 5100can be, for example, a medical instrument (e.g., a laboratory analyzerdevice) a server, a personal computer, a workstation, a self-learningmachine (e.g., a neural network), a mobile device (e.g., a cell phone, asmart phone, a tablet such as an iPad™), a PDA, an Internet appliance, aDVD player, a CD player, a digital video recorder, a Blu-ray player, apersonal video recorder, a headset or other wearable device, or anyother type of computing device.

The processor platform 5100 of the illustrated example includes aprocessor 5112. The processor 5112 of the illustrated example ishardware. For example, the processor 5112 can be implemented by one ormore integrated circuits, logic circuits, microprocessors, GPUs, DSPs,or controllers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor 5112 can represent the processor 300 andimplements the example tester application 118.

The processor 5112 of the illustrated example includes a local memory5113 (e.g., a cache). The processor 5112 of the illustrated example isin communication with a main memory including a volatile memory 5114 anda non-volatile memory 5116 via a bus 5118. The volatile memory 5114 maybe implemented by SDRAM, DRAM, RDRAM® and/or any other type of randomaccess memory device. The non-volatile memory 5116 may be implemented byflash memory and/or any other desired type of memory device. Access tothe main memory 5114, 5116 is controlled by a memory controller.

The processor platform 5100 of the illustrated example also includes aninterface circuit 5120. The interface circuit 5120 may be implemented byany type of interface standard, such as an Ethernet interface, a USB, aBluetooth® interface, an NFC interface, and/or a PCI express interface.

In the illustrated example, one or more input devices 5122 are connectedto the interface circuit 5120. The input device(s) 5122 permit(s) a userto enter data and/or commands into the processor 5112. In some examples,the input device(s) 5122 can include the display 306, which may be atouchscreen, and/or the camera 308. Additionally or alternatively, theinput device(s) can be implemented by, for example, an audio sensor, amicrophone, a keyboard, a button, a mouse, a track-pad, a trackball,isopoint and/or a voice recognition system.

One or more output devices 5124 are also connected to the interfacecircuit 5120 of the illustrated example. The output devices 5124 caninclude the display 306 and can be implemented, for example, by displaydevices (e.g., an LED, an OLED, an LCD display, a CRT display, an IPSdisplay, a touchscreen, etc.), a tactile output device, a printer and/orspeaker. The interface circuit 5120 of the illustrated example, thus,typically includes a graphics driver card, a graphics driver chip and/ora graphics driver processor.

The interface circuit 5120 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver(e.g., the transceiver 304), a modem, a residential gateway, a wirelessaccess point, and/or a network interface to facilitate exchange of datawith external machines (e.g., computing devices of any kind) via anetwork 5126 (e.g., the network 114, such as the internet). Thecommunication can be via, for example, an Ethernet connection, a DSLconnection, a telephone line connection, a coaxial cable system, asatellite system, a line-of-site wireless system, a cellular telephonesystem, etc.

The processor platform 5100 of the illustrated example also includes oneor more mass storage devices 5128 for storing software and/or data.Examples of such mass storage devices 5128 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and DVD drives.

The machine executable instructions 5132 of FIG. 47 may be stored in themass storage device 5128, in the volatile memory5114, in thenon-volatile memory 5116, and/or on a removable non-transitory computerreadable storage medium such as a CD or DVD. The memory 302 can beimplemented by any of the aforementioned.

FIG. 52 is a block diagram of an example processor platform 5200structured to execute the instructions of FIG. 48 to implement theverifier application 120 of FIGS. 1 and 4. The processor platform 5200incorporated into the verifier device 112. The processor platform 5200can be can be, for example, a server, a handheld code scanner, apersonal computer, a workstation, a self-learning machine (e.g., aneural network), a mobile device (e.g., a cell phone, a smart phone, atablet such as an iPad™), a PDA, an Internet appliance, a DVD player, aCD player, a digital video recorder, a Blu-ray player, a personal videorecorder, a headset or other wearable device, or any other type ofcomputing device.

The processor platform 5200 of the illustrated example includes aprocessor 5212. The processor 5212 of the illustrated example ishardware. For example, the processor 5212 can be implemented by one ormore integrated circuits, logic circuits, microprocessors, GPUs, DSPs,or controllers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor 5212 can represent the processor 400 andimplements the example verifier application 120.

The processor 5212 of the illustrated example includes a local memory4413 (e.g., a cache). The processor 5212 of the illustrated example isin communication with a main memory including a volatile memory 5214 anda non-volatile memory 5216 via a bus 5218. The volatile memory 5214 maybe implemented by SDRAM, DRAM, RDRAM® and/or any other type of randomaccess memory device. The non-volatile memory 5216 may be implemented byflash memory and/or any other desired type of memory device. Access tothe main memory 5214, 5216 is controlled by a memory controller.

The processor platform 5200 of the illustrated example also includes aninterface circuit 5220. The interface circuit 5220 may be implemented byany type of interface standard, such as an Ethernet interface, a USB, aBluetooth® interface, an NFC interface, and/or a PCI express interface.

In the illustrated example, one or more input devices 5222 are connectedto the interface circuit 5220. The input device(s) 5222 permit(s) a userto enter data and/or commands into the processor 5212. In some examples,the input device(s) 5222 can include the display 406, which may be atouchscreen, and/or the camera 408. Additionally or alternatively, theinput device(s) can be implemented by, for example, an audio sensor, amicrophone, a keyboard, a button, a mouse, a track-pad, a trackball,isopoint and/or a voice recognition system.

One or more output devices 5224 are also connected to the interfacecircuit 5220 of the illustrated example. The output devices 5224 caninclude the display 406 and can be implemented, for example, by displaydevices (e.g., an LED, an OLED, an LCD display, a CRT display, an IPSdisplay, a touchscreen, etc.), a tactile output device, a printer and/orspeaker. The interface circuit 5220 of the illustrated example, thus,typically includes a graphics driver card, a graphics driver chip and/ora graphics driver processor.

The interface circuit 5220 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver(e.g., the transceiver 404), a modem, a residential gateway, a wirelessaccess point, and/or a network interface to facilitate exchange of datawith external machines (e.g., computing devices of any kind) via anetwork 5226 (e.g., the network 114, such as the internet). Thecommunication can be via, for example, an Ethernet connection, a DSLconnection, a telephone line connection, a coaxial cable system, asatellite system, a line-of-site wireless system, a cellular telephonesystem, etc.

The processor platform 5200 of the illustrated example also includes oneor more mass storage devices 5228 for storing software and/or data.Examples of such mass storage devices 5228 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and DVD drives.

The machine executable instructions 5232 of FIG. 48 may be stored in themass storage device 5228, in the volatile memory 5214, in thenon-volatile memory 5216, and/or on a removable non-transitory computerreadable storage medium such as a CD or DVD. The memory 402 can beimplemented by any of the aforementioned.

FIG. 53 is a block diagram of an example processor platform 5300structured to execute the instructions of FIG. 49 to implement thedigital pass management system 100 of FIGS. 1 and 5. The processorplatform 5300 can be, for example, a server, a personal computer, aworkstation, a self-learning machine (e.g., a neural network), a mobiledevice (e.g., a cell phone, a smart phone, a tablet such as an iPad™), aPDA, an Internet appliance, a DVD player, a CD player, a digital videorecorder, a Blu-ray player, a personal video recorder, a headset orother wearable device, or any other type of computing device.

The processor platform 5300 of the illustrated example includes aprocessor 5312. The processor 5312 of the illustrated example ishardware. For example, the processor 5312 can be implemented by one ormore integrated circuits, logic circuits, microprocessors, GPUs, DSPs,or controllers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor 5312 can implement the example recordgenerator 504 and the example validator 506.

The processor 5312 of the illustrated example includes a local memory5313 (e.g., a cache). The processor 5312 of the illustrated example isin communication with a main memory including a volatile memory 5314 anda non-volatile memory 5316 via a bus 5318. The volatile memory 5314 maybe implemented by SDRAM, DRAM, RDRAM® and/or any other type of randomaccess memory device. The non-volatile memory 5316 may be implemented byflash memory and/or any other desired type of memory device. Access tothe main memory 5314, 5316 is controlled by a memory controller.

The processor platform 5300 of the illustrated example also includes aninterface circuit 5320. The interface circuit 5320 may be implemented byany type of interface standard, such as an Ethernet interface, a USB, aBluetooth® interface, an NFC interface, and/or a PCI express interface.

In the illustrated example, one or more input devices 5322 are connectedto the interface circuit 5320. The input device(s) 5322 permit(s) a userto enter data and/or commands into the processor 5312. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 5324 are also connected to the interfacecircuit 5320 of the illustrated example. The output devices 5324 can beimplemented, for example, by display devices (e.g., an LED, an OLED, anLCD display, a CRT display, an IPS display, a touchscreen, etc.), atactile output device, a printer and/or speaker. The interface circuit5320 of the illustrated example, thus, typically includes a graphicsdriver card, a graphics driver chip and/or a graphics driver processor.

The interface circuit 5320 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem, a residential gateway, a wireless access point, and/or a networkinterface to facilitate exchange of data with external machines (e.g.,computing devices of any kind) via a network 5326 (e.g., the network114, such as the internet). The communication can be via, for example,an Ethernet connection, a DSL connection, a telephone line connection, acoaxial cable system, a satellite system, a line-of-site wirelesssystem, a cellular telephone system, etc.

The processor platform 5300 of the illustrated example also includes oneor more mass storage devices 5328 for storing software and/or data.Examples of such mass storage devices 5328 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and DVD drives.

The machine executable instructions 5332 of FIG. 49 may be stored in themass storage device 5328, in the volatile memory 5314, in thenon-volatile memory 5316, and/or on a removable non-transitory computerreadable storage medium such as a CD or DVD. The database 502 can beimplemented by any of the aforementioned.

A block diagram illustrating an example software distribution platform5400 to distribute software such as the example computer readableinstructions 5032, 5132, 5232, and 5332 of FIGS. 50-53 to third partiesis illustrated in FIG. 54. The example software distribution platform5400 may be implemented by any computer server, data facility, cloudservice, etc., capable of storing and transmitting software to othercomputing devices. The third parties may be customers, employees,patients, clients of the entity owning and/or operating the softwaredistribution platform. For example, the entity that owns and/or operatesthe software distribution platform may be a developer, a seller, and/ora licensor of software such as the example computer readableinstructions 5032, 5132, 5232, and 5332 of FIGS. 50-53. The thirdparties may be consumers, users, retailers, OEMs, etc., who purchaseand/or license the software for use and/or re-sale and/or sub-licensing.

In the illustrated example, the software distribution platform 5400includes (or is implemented by) one or more servers to distribute theexample computer readable instructions 5032, 5132, 5232, and 5332 to thecorresponding processor platforms 5000, 5100, 5200, and 5300 of FIGS.50-53. The one or more servers include one or more storage devices 5402.The storage devices 5402 can be one or more non-transitory computerreadable medium. The storage devices 5402 store the computer readableinstructions, which may correspond to the example computer readableinstructions 5032, 5132, 5232, and 5332 of FIGS. 50-53, as describedabove. The one or more servers of the example software distributionplatform 5400 are in communication with a network 5404, which maycorrespond to any one or more of the Internet and/or any of the examplenetworks described above. The one or more servers also include at leastone processor 5406. The storage device 5402 stores instructions 5408that, when executed by the at least one processor 5406, cause the atleast one or processor 5406 to transmit and/or otherwise distribute theexample computer readable instructions 5032, 5132, 5232, and 5332 ofFIGS. 50-53 over the network 5404. In some examples, the one or moreservers are responsive to requests to transmit the software to arequesting party as part of a commercial transaction. Payment for thedelivery, sale and/or license of the software may be handled by the oneor more servers of the software distribution platform and/or via a thirdparty payment entity. The servers enable purchasers and/or licensors todownload the computer readable instructions 5032, 5132, 5232, and 5332from the software distribution platform 5400. For example, the software,which may correspond to the example computer readable instructions 5032,5132, 5232, and 5332 of FIGS. 50-53, may be downloaded to the examplerespective processor platforms 5000, 5100, 5200, 5300, which to executethe computer readable instructions 5032, 5132, 5232, 5332 to implementthe user application 116, the tester application 118, the verifierapplication 120, and/or the digital pass management system 100. In someexample, one or more servers of the software distribution platform 5405periodically offer, transmit, and/or force updates to the software(e.g., the example computer readable instructions 5032, 5132, 5232, and5332 of FIGS. 50-53) to ensure improvements, patches, updates, etc. aredistributed and applied to the software at the end user devices.

From the foregoing, it will be appreciated that example methods,apparatus, systems, and articles of manufacture have been disclosed thatenable verifiers to quickly, easily, and accurately verify whether auser (e.g., an employee, a passenger, a spectator, a patient, or otherperson) has recently tested negative for an infectious diseases beforeallowing the person access to a particular area or location. As such,the examples, disclosed herein can help reduce the risk of spreading aninfectious disease and, thus, improve safety.

The examples disclosed herein also increase communication bandwidthamong the user application 116, the tester application 118, the verifierapplication 120, and the digital pass management system 100 because thedigital passes are produced on the user device 108 and do not have to betransmitted over the Internet or computed in the cloud. Furthermore, theuser application 116 constructs the digital pass based on a negativeresult. Therefore, user devices do not expend operating resources toconstruct a digital pass for every test that is performed.

In some examples, the verifier application 120 communicates directlywith the digital pass management system 100. In such examples, theverifier 106 may receive test results without communication with a user.For example, an employer may receive an employee's test result before anemployee arrives at work. In this example, the employer may preemptivelycontact the employee and notify them that they have been restricted fromattendance at work.

In some examples, the tester 104 and/or the digital pass managementsystem 100 develop a sequence of tests to recommend to a user. Forexample, the sequence of tests may be based on a pathogen life cycleand/immune response. In such examples, a first type of test may berecommended at a first time period. Based on an incubation period, thepathogen life cycle, and/or immune response, a second instance of thefirst type of test and/or a second type of test may be recommended at asecond time period. The tester 104 and/or the digital pass managementsystem 100 can transmit a notification of the sequence of diagnostictests to the user device 108. The scheduler 208 of the user application116 causes the user device 108 to display the notification of therecommended testing sequence.

In some examples, the tester 104 and/or the digital pass managementsystem 100 may publish test results. In some examples, geographic dataregarding where digital pass codes have been scanned is gathered. Insome examples, geographic data regarding where positive tests haveoccurred (e.g., user residential and work data is gathered. The userapplication 116, the tester application 118, the verifier application120, and the digital pass management system 100 may work in concert toaggregate geographic data related to positive tests, negative tests,user travel history, and user movement. The aggregated data may be usedto create heat maps that identify regions or smaller geographiclocations (e.g., a particular school or business) that are areas ofrelatively higher positivity rates.

Example digital pass verification systems, methods, apparatus, devices,and articles of manufacture are disclosed herein. Further examples andcombinations thereof include the following:

Example 1 includes one or more servers to distribute first instructions,second instructions, third instructions, and fourth instructions, on anetwork. The one or more servers include at least one storage deviceincluding fifth instructions and at least one processor to execute thefifth instructions to transmit the first instructions, the secondinstructions, the third instructions, and the fourth instructions overthe network. The first instructions, when executed, cause a first devicecarried by a person to at least: access a result of a diagnostic testperformed on the person, the result provided by a second device;generate a machine-readable code in response to the result beingnegative; and display the machine-readable code on a display of thefirst device to enable the person to gain access to a location. Thesecond instructions, when executed, cause the second device to at least:receive input indicative of the result of the diagnostic test; andtransmit the result to a third device. The third instructions, whenexecuted, cause a fourth device to at least: detect the machine-readablecode from the first device; determine a user identification associatedwith the person based on the machine-readable code; determine a testidentification associated with the diagnostic test based on themachine-readable code; transmit the user identification and the testidentification to the third device, the third device remote from thefourth device; and receive a verification outcome from the third device.The fourth instructions, when executed, cause the third device to atleast: transmit the result of the diagnostic test to the first device;receive the user identification and the test identification from thefourth device; verify the result of the diagnostic test based on theuser identification and the test identification; determine a number ofdays since the diagnostic test; and transmit the verification outcome tothe fourth device. The verification outcome includes a first notice whenthe result of the diagnostic test is negative and the number of dayssince the diagnostic test is below a threshold number of days, and theverification outcome includes a second notice when the number of dayssince the diagnostic test is greater than the threshold.

Example 2 includes the one or more servers of Example 1, wherein theresult is a first result, the diagnostic test is a first diagnostictest, and the machine-readable code is a first machine-readable code.The first instructions, when executed, cause the first device to: accessa second result of a second diagnostic test performed on the person; andgenerate a second machine-readable code in response to the second resultbeing negative.

Example 3 includes the one or more servers of Example 2, wherein thefirst diagnostic test is to detect a presence or an absence of a firstanalyte of interest, and the second diagnostic test is to detect apresence or an absence of a second analyte of interest. The secondanalyte of interest is different than the first analyte of interest.

Example 4 includes the one or more servers of Example 2, wherein thefirst diagnostic test is to detect a presence or an absence of ananalyte of interest, and the second diagnostic test is to detect apresence or an absence of the analyte of interest. The second diagnostictest performed is subsequent to the first diagnostic test.

Example 5 includes the one or more servers of any of Examples 2-4,wherein the second diagnostic test is a different type of diagnostictest than the first diagnostic test.

Example 6 includes the one or more servers of Example 5, wherein thefirst diagnostic test is an antigen test and the second diagnostic testis an antibody test.

Example 7 includes the one or more servers of an of Examples 2-6,wherein the first diagnostic test is to be performed with a first typeof testing equipment and the second diagnostic test is to be performedwith a second type of testing equipment. The second type is differentthan the first type.

Example 8 includes the one or more servers of any of Examples 2-7,wherein the second machine-readable code is to be read by a fifthdevice. The fifth device is remote from the third device.

Example 9 includes the one or more servers of any of Examples 1-8,wherein the fourth instructions, when executed, enable the third deviceto invalidate the machine-readable code when the number of days sincethe diagnostic test is below the threshold number of days.

Example 10 includes the one or more servers of any of Examples 1-9,wherein the diagnostic test is to detect a presence or an absence of apathogen and the threshold is based on an incubation period of thepathogen.

Example 11 includes the one or more servers of any of Examples 1-10,wherein the diagnostic test is a first diagnostic test, and the firstinstructions, when executed, cause the first device to display anotification to the person to schedule a second diagnostic test based onthe number of days since the first diagnostic test and the thresholdnumber of days.

Example 12 includes the one or more servers of any of Examples 1-11,wherein the third instructions, when executed, cause the fourth deviceto display the first notice or the second notice to grant or deny theperson access to the location based on the verification outcome and alocation of the fourth device.

Example 13 includes the one or more servers of any of Examples 1-12,wherein the third instructions, when executed, cause the fourth deviceto display the first notice or the second notice to grant or deny theperson access to the location based on the verification outcome and atleast one of a time of day or a day of the week.

Example 14 includes the one or more servers of any of Examples 1-13,wherein the third instructions, when executed, cause the fourth deviceto automatically unlock at least one of a door, a gate, or a turnstilebased on the verification outcome.

Example 15 includes the one or more servers of any of Examples 1-14,wherein the fourth instructions, when executed, cause the third deviceto: develop a sequence of diagnostic tests based on at least one of apathogen incubation period, a pathogen life cycle, or an immuneresponse; and transmit a notification of the sequence of diagnostictests to the first device. The first instructions, when executed, causethe first device to display the notification of the sequence ofdiagnostic tests to the person on the first device.

Example 16 includes one or more non-transitory computer readable mediumincluding instructions that, when executed, cause one or more processorsin a first device carried by a person to at least: access a result of adiagnostic test performed on the person; generate a machine-readablecode in response to the result being negative; and display themachine-readable code on a display of the first device to enable theperson to gain access to a location. The instructions, when executed,cause one or more processors in a second device to at least: detect themachine-readable code from the first device; determine a useridentification associated with the person based on the machine-readablecode; determine a test identification associated with the diagnostictest based on the machine-readable code; transmit the useridentification and the test identification to a third device, the thirddevice remote from the second device; and receive a verification outcomefrom the third device. The instructions, when executed, cause one ormore processors in the third device to at least: transmit the result ofthe diagnostic test to the first device; receive the user identificationand the test identification from the second device; verify the result ofthe diagnostic test based on the user identification and the testidentification; determine a number of days since the diagnostic test;and transmit the verification outcome to the second device. Theverification outcome includes a first notice when the result of thediagnostic test is negative and the number of days since the diagnostictest is below a threshold number of days, and the verification outcomeincludes a second notice when the number of days since the diagnostictest is greater than the threshold.

Example 17 includes the one or more non-transitory computer readablemedium of Example 16, wherein the instructions, when executed, cause oneor more processors in a fourth device to at least: automaticallydetermine the result of the diagnostic test; and transmit the result ofthe diagnostic test to the third device.

Example 18 includes the one or more non-transitory computer readablemedium of Examples 16 or 17, wherein the instructions, when executed,cause one or more processors in a fourth device to at least: provide anotification for the interpretation and entry of the result of thediagnostic test; and transmit the result of the diagnostic test to thethird device.

Example 19 includes the one or more non-transitory computer readablemedium of an of Examples 16-18, wherein the instructions, when executed,cause one or more processors in a fourth device to transmit an image ofat least a portion of a test kit used in the diagnostic test to thefirst device.

Example 20 includes the one or more non-transitory computer readablemedium of any of Examples 16-19, wherein the instructions cause the oneor more processors of the second device to display the first notice orthe second notice to grant or deny the person access to the locationbased on the verification outcome and at least one of: a location of thesecond device, a time of day, a day of the week, or an employmentstatus.

Example 21 includes a server to distribute first instructions on anetwork. The server includes at least one storage device includingsecond instructions and at least one processor to execute the secondinstructions to transmit the first instructions over the network. Thefirst instructions, when executed, are to cause a mobile device carriedby a person to at least: access a user identification associated withthe person; access a result of a diagnostic test performed on a samplegathered from the person; display the result on a display of the mobiledevice; and generate an interface including the user identification andan indicator. The indicator is generated in response to the result beingnegative and a number of days since the diagnostic test being below athreshold number of days. The first instructions, when executed, arealso to cause the mobile device to display the interface on the displayto enable the person to gain entry into a location.

Example 22 includes the server of Example 21, wherein the result is afirst result, the diagnostic test is a first diagnostic test, theinterface is a first interface, and the indicator is a first indicator.The first instructions, when executed, cause the mobile device to:access a second result of a second diagnostic test; display the secondresult on the display of the mobile device; and generate a secondinterface including a second indicator. The second indicator isgenerated in response to the second result being negative and a numberof days since the second diagnostic test being below the thresholdnumber of days.

Example 23 includes the server of Example 22, wherein the person is afirst person and the second diagnostic test is performed on a secondperson.

Example 24 includes the server of any of Examples 21-23, wherein thediagnostic test is to detect a presence or an absence of a pathogen andthe threshold number of days is based on an incubation period of thepathogen.

Example 25 includes the server of any of Examples 21-24, wherein thediagnostic test is a first diagnostic test, and the first instructions,when executed, cause the mobile device to display a notification to theperson to schedule a second diagnostic test based on the number of dayssince the diagnostic test and the threshold number of days.

Example 26 includes the server of any of Examples 21-25, wherein thefirst instructions, when executed, cause the mobile device to inform theperson how to collect the sample for the diagnostic test.

Example 27 includes the server of any of Examples 21-26, wherein thefirst instructions, when executed, cause the mobile device to detect andinterpret a test kit code on a test kit to obtain a test kitidentification associated with the test kit.

Example 28 includes the server of any of Examples 21-27, wherein thefirst instructions, when executed, cause the mobile device to provide anotification for interpretation and entry of the result of thediagnostic test.

Example 29 includes the server of any of Examples 21-28, wherein thefirst instructions, when executed, enable the person to schedule anappointment to provide the sample for the diagnostic test.

Example 30 includes the server of any of Examples 21-29, wherein thefirst instructions, when executed, cause the mobile device toelectronically connect with a telehealth service provider prior tocollection of the sample.

Example 31 includes at least one non-transitory computer readable mediumincluding instructions that, when downloaded to a mobile device andexecuted, cause a processor of the mobile device to at least: access aresult of a diagnostic test performed on a sample gathered from aperson; generate a machine-readable code in response to the result beingnegative; and display the machine-readable code on a display of themobile device to enable the person to gain entry into a location.

Example 32 includes the at least one non-transitory computer readablemedium of Example 31, wherein the machine-readable code includes a useridentification and a test kit identification associated with a test kitused to perform the diagnostic test.

Example 33 includes the at least one non-transitory computer readablemedium of Examples 31 or 32, wherein the result is a first result, thediagnostic test is a first diagnostic test, the sample is a firstsample, and the machine-readable code is a first machine-readable code.The instructions, when executed, cause the processor of the mobiledevice to: access a second result of a second diagnostic test performedon a second sample gathered from the person; and generate a secondmachine-readable code in response to the second result being negative.

Example 34 includes the at least one non-transitory computer readablemedium of Example 33, wherein the first diagnostic test is to detect apresence or an absence of a first analyte of interest, and the seconddiagnostic test is to detect a presence or an absence of a secondanalyte of interest. The second analyte of interest is different thanthe first analyte of interest.

Example 35 includes the at least one non-transitory computer readablemedium of Example 33, wherein the first diagnostic test is to detect apresence or an absence of an analyte of interest, and the seconddiagnostic test is to detect a presence or an absence of the analyte ofinterest. The second diagnostic test is performed subsequent to thefirst diagnostic test.

Example 36 includes the at least one non-transitory computer readablemedium of Example 36, wherein the first diagnostic test is an antigentest and the second diagnostic test is an antibody test.

Example 37 includes the at least one non-transitory computer readablemedium of any of Examples 31-36, wherein the instructions, whenexecuted, cause the processor of the mobile device to: receive anotification of a sequence of diagnostic tests based on at least one ofa pathogen incubation period, a pathogen life cycle, or an immuneresponse; and display the notification of the sequence of diagnostictests to the person on the display of the mobile device.

Example 38 includes the at least one non-transitory computer readablemedium of any of Examples 31-37, wherein the instructions, whenexecuted, cause the processor of the mobile device to electronicallyconnect with a telehealth service provider prior to collection of thesample.

Example 39 includes the at least one non-transitory storage medium ofany of Examples 31-38, wherein the instructions, when executed, causethe processor of the mobile device to: inform the person how to collectthe sample for the diagnostic test; and automatically determine theresult of the diagnostic test.

Example 40 includes the at least one non-transitory computer readablemedium of any of Examples 31-39, wherein the instructions, whenexecuted, cause the processor of the mobile device to: inform the personhow to collect the sample for the diagnostic test; and provide anotification for interpretation and entry of the result of thediagnostic test into the mobile device.

Example 41 includes an apparatus including processor circuitry andmemory including instructions which, when executed, cause the processorcircuitry to: access a result of a diagnostic test associated with atest kit identification; associate the result of the diagnostic testwith a user identification; transmit the result of the diagnostic testand the test kit identification to a first device to cause the firstdevice to generate a machine-readable pass on a display of the firstdevice; receive the user identification and the test kit identificationfrom a second device that is communicatively coupled to a scanner of thesecond device when the scanner reads the machine-readable pass, and,when the test kit identification and the user identification match theresult of the diagnostic test: transmit a first notification to thesecond device when a number of days since the diagnostic test is lessthan a threshold number of days to cause the second device to present afirst display; and transmit a second notification to the second devicewhen the number of days since the diagnostic test is greater than thethreshold number of days to cause the second device to present a seconddisplay, the second display different from the first display.

Example 42 includes the apparatus of Example 41, wherein theinstructions, when executed, cause the processor circuitry to transmitthe second notification to the second device when the useridentification has been inactivated from a verifier organizationassociated with the second device.

Example 43 includes the apparatus of Examples 41 or 42, wherein theinstructions, when executed, cause the processor circuitry to transmit athird notification to the second device when at least one of the useridentification or the test kit identification is not matched to theresult to cause the second device to present a third display. The thirddisplay is different from the first display and the second display.

Example 44 includes the apparatus of any of Examples 41-43, wherein theinstructions, when executed, cause the processor circuitry to receivethe result of the diagnostic test from the first device.

Example 45 includes the apparatus of any of Examples 41-44, wherein theinstructions, when executed, cause the processor circuitry to receivethe result of the diagnostic test from a third device, the third deviceremote from the first device and the second device.

Example 46 includes the apparatus of any of Examples 41-45, wherein thethreshold number of days is set by a verifier organization associatedwith the second device.

Example 47 includes the apparatus of any of Examples 41-46, wherein thethreshold number of days is based on a biological characteristic of ananalyte of interest to be tested in the diagnostic test.

Example 48 includes the apparatus of any of Examples 41-47, wherein theinstructions, when executed, cause the processor circuitry to: accessresults of diagnostic tests; receive sets of user identifications andtest kit identifications from one or more second devices; generate areport based on the results and receipt of the sets of useridentifications and test kit identifications; and transmit the report toa government agency.

Example 49 includes the apparatus of any of Examples 41-48, wherein theinstructions, when executed, cause the processor circuitry to verify atleast one of an expiration date of a test kit or a recall status of thetest kit based on the test kit identification prior to transmitting theresult of the diagnostic test and the test kit identification to thefirst device.

Example 50 includes the apparatus of any of Examples 41-49, wherein theinstructions, when executed, cause the processor circuitry to verify anauthenticity of a test kit based on the test kit identification prior totransmitting the result of the diagnostic test and the test kitidentification to the first device.

Example 51 includes at least one non-transitory storage medium includinginstructions that, when executed, cause a machine to: access a result ofa diagnostic test associated with a test kit identification; associatethe result of the diagnostic test with a user identification; transmitthe result of the diagnostic test and the test kit identification to afirst device to cause the first device to generate a digital pass codeon a display of the first device; receive the user identification andthe test kit identification from a second device that is communicativelycoupled to a scanner of the second device when the scanner reads thedigital pass code; and, when the test kit identification and the useridentification match the result of the diagnostic test: transmit a firstnotification to the second device when an amount of time since thediagnostic test is below a threshold amount of time to cause the seconddevice to present a first display; and transmit a second notification tothe second device when the amount of time since the diagnostic test isgreater than the threshold amount of time to cause the second device topresent a second display, the second display different from the firstdisplay.

Example 52 includes the storage medium of Example 51, wherein theinstructions, when executed, cause the machine to transmit the secondnotification to the second device when the user identification has beenremoved from a verifier organization associated with the second device.

Example 53 includes the storage medium of Examples 51 or 52, wherein theinstructions, when executed, cause the machine to transmit a thirdnotification to the second device when at least one of the useridentification or the test kit identification is not matched to theresult to cause the second device to present a third display. The thirddisplay is different from the first display and the second display.

Example 54 includes the storage medium of any of Examples 51-53, whereinthe instructions, when executed, cause the machine to receive the resultof the diagnostic test from the first device.

Example 55 includes the storage medium of any of Examples 51-54, whereinthe instructions, when executed, cause the machine to receive the resultof the diagnostic test from a third device, the third device remote fromthe first device and the second device.

Example 56 includes the storage medium of any of Examples 51-55, whereinthe threshold amount of time is set by a verifier organizationassociated with the second device.

Example 57 includes the storage medium of any of Examples 51-56, whereinthe threshold amount of time is based on a biological characteristic ofan analyte of interest to be tested in the diagnostic test.

Example 58 includes the storage medium of any of Examples 51-57, whereinthe instructions, when executed, cause the machine to: access results ofdiagnostic tests; receive sets of user identifications and test kitidentifications from one or more second devices; generate a report basedon the results and receipt of the sets of user identifications and testkit identifications; and transmit the report to a government agency.

Example 59 includes the storage medium of any of Examples 51-58, whereinthe instructions, when executed, cause the machine to verify at leastone of an expiration date of a test kit or a recall status of the testkit based on the test kit identification prior to transmitting theresult of the diagnostic test and the test kit identification to thefirst device.

Example 60 includes the storage medium of any of Examples 51-59, whereinthe instructions, when executed, cause the machine to verify anauthenticity of a test kit based on the test kit identification prior totransmitting the result of the diagnostic test and the test kitidentification to the first device.

Example 61 is a device to generate a digital pass. The device includesan analyzer to determine a result of a diagnostic test and a codegenerator to: access a test identification based on the result, access auser identification based on the result, construct a machine-readablecode based on the test identification and the user identification, andincorporate the code into a digital pass. The device further includes anoutput to display the digital pass.

Example 62 includes the device of Example 61, wherein the code generatoris to incorporate an expiration date into the digital pass. The devicefurther includes a scheduler to determine a validity of the digital passbased on the expiration date, and a notifier to prompt scheduling of atest when the time comparator determines the digital pass is not valid.

Example 63 is a device to generate a digital pass. The device includesmeans for determining a result of a diagnostic test, means forgenerating a code, the generating means to: access a test identificationbased on the result, access a user identification based on the result,construct a machine-readable code based on the test identification andthe user identification, and incorporate the code into a digital pass,and means for displaying the digital pass.

Example 64 includes the device of Example 63, wherein the generatingmeans is to incorporate an expiration date into the digital pass. Thedevice further includes means for determining a validity of the digitalpass based on the expiration date, and means for prompting scheduling ofa test when the time comparator determines the digital pass is notvalid.

Example 65 is an apparatus to generate a digital pass. The apparatusincludes processor circuitry and a memory including instructions which,when executed, cause the processor circuitry to: determine a result of adiagnostic test, generate a code, the generating means to: access a testidentification based on the result, access a user identification basedon the result, construct a machine-readable code based on the testidentification and the user identification, and incorporate the codeinto a digital pass, and display the digital pass.

Example 66 includes the apparatus of Example 65, wherein theinstructions, when executed, cause the processor circuitry to:incorporate an expiration date into the digital pass, determine avalidity of the digital pass based on the expiration date, and promptscheduling of a test when the time comparator determines the digitalpass is not valid.

Example 67 includes a non-transitory computer readable storage mediumincluding instructions which, when executed, cause one or moreprocessors to at least: determine a result of a diagnostic test,generate a code, the generating means to: access a test identificationbased on the result, access a user identification based on the result,construct a machine-readable code based on the test identification andthe user identification, incorporate the code into a digital pass, anddisplay the digital pass.

Example 68 includes the computer readable storage medium of Example 67,wherein the instructions, when executed, cause the one or moreprocessors to: incorporate an expiration date into the digital pass;determine a validity of the digital pass based on the expiration date,and prompt scheduling of a test when the time comparator determines thedigital pass is not valid.

Example 69 includes a method to create a digital pass. The methodincludes determining, by executing instructions with a processor, aresult of a diagnostic test, generating, by executing instructions withthe processor, a code, the generating means to: accessing, by executinginstructions with the processor, a test identification based on theresult, accessing, by executing instructions with the processor, a useridentification based on the result, constructing, by executinginstructions with the processor, a machine-readable code based on thetest identification and the user identification, incorporating, byexecuting instructions with the processor, the code into a digital pass,and displaying, by executing instructions with the processor, thedigital pass.

Example 70 includes the method of Example 69, further including:incorporating, by executing instructions with the processor, anexpiration date into the digital pass, determining, by executinginstructions with the processor, a validity of the digital pass based onthe expiration date, and prompting, by executing instructions with theprocessor, scheduling of a test when the time comparator determines thedigital pass is not valid.

Example 71 is a server to distribute first instructions on a network.The server includes at least one storage device including secondinstructions, and at least one processor to execute the secondinstructions to transmit the first instructions over the network. Thefirst instructions, when executed, to cause at least one device to atleast: determine a result of a diagnostic test, generate a code, thegenerating means to: access a test identification based on the result,access a user identification based on the result, construct amachine-readable code based on the test identification and the useridentification, incorporate the code into a digital pass, and displaythe digital pass.

Example 72 includes the server of Example 71, wherein the firstinstructions, when executed, to cause at least one device to further:incorporate an expiration date into the digital pass, determine avalidity of the digital pass based on the expiration date, and promptscheduling of a test when the time comparator determines the digitalpass is not valid.

Example 73 includes a system that includes a first non-transitorycomputer readable storage medium including a first set of instructionswhich, when executed, cause at least a first processor to at least:generate a record of a test result of a medical diagnostic test of abiological sample from a user, and transmit the test result to a secondprocessor. The system also includes a second non-transitory computerreadable storage medium including a second set of instructions which,when executed, cause at least the second processor to at least: generatea machine-readable code based on the test result and useridentification, incorporate the code into a digital pass, and displaythe digital pass. The system further includes a third non-transitorycomputer readable storage medium including a third set of instructionswhich, when executed, cause at least a third processor to at least: scanthe digital pass, and verify the test result.

Example 74 includes the system of Example 73, wherein themachine-readable code is a first machine readable code, the secondinstructions, when executed, cause the second device to: generate asecond machine-readable code based on the user identification, anddisplay the second machine-readable code; and the first instructions,when executed, cause a fourth device to: scan the second-machinereadable code, and associate the user identification is a test kit andthe biological sample.

Example 75 is a server to distribute first, second, and thirdinstructions over a network. The server includes at least one storagedevice including fourth instructions, and at least one processor toexecute the fourth instructions to: transmit the first instructions overthe network to a first device, transmit the second instructions over thenetwork to a second device, and transmit the third instructions over thenetwork to a third device. The first instructions, when executed, tocause the first device to: generate a record of a test result of amedical diagnostic test of a biological sample from a user, and transmitthe test result to the second device. The second instructions, whenexecuted, to cause the second device to: generate a machine-readablecode based on the test result and user identification, incorporate thecode into a digital pass, and display the digital pass. The thirdinstructions, when executed, to cause the third device to: scan thedigital pass, and verify the test result.

Example 76 includes the server of Example 75, wherein the wherein themachine-readable code is a first machine readable code, the secondinstructions, when executed, cause the second device to: generate asecond machine-readable code based on the user identification, anddisplay the second machine-readable code; and the first instructions,when executed, cause a fourth device to: scan the second-machinereadable code, and associate the user identification is a test kit andthe biological sample.

Example 77 is device including any feature described, eitherindividually or in combination with any feature, in any configuration.

Example 78 is a system including any feature described, eitherindividually or in combination with any feature, in any configuration.

Example 79 is a server to transmit instructions to perform any methoddisclosed herein.

Example 80 is a method to operate any device, system, processor, orserver disclosed herein.

Example 71 is a non-transitory computer readable storage mediumincluding instructions which, when executed, cause at least one or moreprocessors to perform any method or function disclosed herein.

Although certain example methods, apparatus, systems, and articles ofmanufacture have been disclosed herein, the scope of coverage of thispatent is not limited thereto. On the contrary, this patent covers allmethods, apparatus, systems, and articles of manufacture fairly fallingwithin the scope of the claims of this patent.

The following claims are hereby incorporated into this DetailedDescription by this reference, with each claim standing on its own as aseparate embodiment of the present disclosure.

What is claimed is:
 1. A server to distribute instructions over anetwork, the server comprising: at least one storage device includingfirst instructions to be executed by first processor circuitry of amobile device carried by a person; second instructions in the server;and second processor circuitry to execute the second instructions totransmit the first instructions over the network to the mobile device,the first instructions, when executed, to cause the first processorcircuitry of the mobile device to at least: access a result of adiagnostic test for an infectious disease performed on the person; causepresentation of the result on a display of the mobile device; generate adigital pass in response to the result being negative for the infectiousdisease, store the digital pass in a memory of the mobile device; causepresentation, at a first time, of the digital pass on the display toenable the person to gain access to a location; cause presentation, at asecond time subsequent to the first time, of a plurality of healthquestions on the display associated with symptoms of the infectiousdisease; receive answers to the health questions from the person; andprevent, at a third time subsequent to the second time, the digital passfrom being presented on the display if one or more of the answers to thehealth questions indicate the person has at least one symptom of theinfectious disease.
 2. The server of claim 1, wherein the infectiousdisease is a disease caused by a coronavirus.
 3. The server of claim 1,wherein the first instructions, when executed, cause the first processorcircuitry of the mobile device to cause presentation of the healthquestions on the display on a daily basis.
 4. The server of claim 1,wherein the first instructions, when executed, cause the first processorcircuitry of the mobile device to cause presentation of a notificationto the person on the display to take another diagnostic test based onone or more of the answers to one or more of the health questions. 5.The server of claim 1, wherein the first instructions, when executed,cause the first processor circuitry of the mobile device to delete thedigital pass after a threshold number of days since the diagnostic test.6. The server of claim 1, wherein the answers are first answers, andwherein the first instructions, when executed, cause the first processorcircuitry of the mobile device to: cause presentation, at a fourth timesubsequent to the third time, of the health questions on the display;receive second answers to the health questions from the person; andcause presentation, at a fifth time subsequent to the fourth time, ofthe digital pass based on the second answers to the health questions. 7.The server of claim 1, wherein the digital pass includes amachine-readable code.
 8. The server of claim 7, wherein themachine-readable code includes a user identification associated with theperson and a test kit identification associated with a test kit used toperform the diagnostic test.
 9. The server of claim 8, wherein the firstinstructions, when executed, cause the first processor circuitry of themobile device to cause a camera of the mobile device to scan a test kitcode on the test kit to obtain the test kit identification.
 10. Theserver of claim 8, wherein the machine-readable code is a Quick Responsecode.
 11. One or more non-transitory computer readable medium comprisinginstructions that, when executed, cause one or more processors in a userdevice carried by a person to at least: access a result of a diagnostictest for an analyte of interest performed on a sample gathered from theperson; cause presentation of the result on a display of the userdevice; generate a digital pass in response to the result being negativefor the analyte of interest; store the digital pass in a memory of theuser device; cause presentation, at a first time, of the digital pass onthe display to enable the person to gain access to a location; causepresentation, at a second time subsequent to the first time, of aplurality of health questions on the display associated with symptoms ofbeing ill; access answers to the health questions from the person; anddeactivate, at a third time subsequent to the second time, the digitalpass display based on one or more of the answers to one or more of thehealth questions.
 12. The one or more non-transitory computer readablemedium of claim 11, wherein the analyte of interest is an infectiousdisease.
 13. The one or more non-transitory computer readable medium ofclaim 11, wherein the analyte of interest is a COVID-19 antibody. 14.The one or more non-transitory computer readable medium of claim 11,wherein the instructions, when executed, cause the one or moreprocessors to cause presentation of the health questions on the displayon a daily basis.
 15. The one or more non-transitory computer readablemedium of claim 11, wherein the instructions, when executed, cause theone or more processors to cause presentation of a notification to theuser on the display to take another diagnostic test based on the answersto the health questions.
 16. The one or more non-transitory computerreadable medium of claim 11, wherein the instructions, when executed,cause the one or more processors to delete the digital pass after athreshold number of days since the diagnostic test.
 17. The one or morenon-transitory computer readable medium of claim 11, wherein the answersare first answers, and wherein the instructions, when executed, causethe one or more processors to: cause presentation, at a fourth timesubsequent to the third time, of the health questions on the display;receive second answers to the health questions from the person; andcause presentation, at a fifth time subsequent to the fourth time, ofthe digital pass based on the second answers to the health questions.18. The one or more non-transitory computer readable medium of claim 11,wherein the digital pass includes a machine-readable code.
 19. The oneor more non-transitory computer readable medium of claim 18, wherein themachine-readable code includes a user identification associated with theperson and a test kit identification associated with a test kit used toperform the diagnostic test.
 20. The one or more non-transitory computerreadable medium of claim 18, wherein the machine-readable code is aQuick Response code.